Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(104)

Side by Side Diff: ash/shell.cc

Issue 10915140: Add the partial screen magnifier to Chrome OS. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Code review fixes. Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/shell.h" 5 #include "ash/shell.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 9
10 #include "ash/accelerators/focus_manager_factory.h" 10 #include "ash/accelerators/focus_manager_factory.h"
11 #include "ash/ash_switches.h" 11 #include "ash/ash_switches.h"
12 #include "ash/caps_lock_delegate_stub.h" 12 #include "ash/caps_lock_delegate_stub.h"
13 #include "ash/desktop_background/desktop_background_controller.h" 13 #include "ash/desktop_background/desktop_background_controller.h"
14 #include "ash/desktop_background/desktop_background_resources.h" 14 #include "ash/desktop_background/desktop_background_resources.h"
15 #include "ash/desktop_background/desktop_background_view.h" 15 #include "ash/desktop_background/desktop_background_view.h"
16 #include "ash/display/display_controller.h" 16 #include "ash/display/display_controller.h"
17 #include "ash/display/mouse_cursor_event_filter.h" 17 #include "ash/display/mouse_cursor_event_filter.h"
18 #include "ash/display/multi_display_manager.h" 18 #include "ash/display/multi_display_manager.h"
19 #include "ash/display/screen_position_controller.h" 19 #include "ash/display/screen_position_controller.h"
20 #include "ash/display/secondary_display_view.h" 20 #include "ash/display/secondary_display_view.h"
21 #include "ash/drag_drop/drag_drop_controller.h" 21 #include "ash/drag_drop/drag_drop_controller.h"
22 #include "ash/focus_cycler.h" 22 #include "ash/focus_cycler.h"
23 #include "ash/high_contrast/high_contrast_controller.h" 23 #include "ash/high_contrast/high_contrast_controller.h"
24 #include "ash/launcher/launcher.h" 24 #include "ash/launcher/launcher.h"
25 #include "ash/magnifier/magnification_controller.h" 25 #include "ash/magnifier/magnification_controller.h"
26 #include "ash/magnifier/partial_magnification_controller.h"
26 #include "ash/root_window_controller.h" 27 #include "ash/root_window_controller.h"
27 #include "ash/screen_ash.h" 28 #include "ash/screen_ash.h"
28 #include "ash/shell_context_menu.h" 29 #include "ash/shell_context_menu.h"
29 #include "ash/shell_delegate.h" 30 #include "ash/shell_delegate.h"
30 #include "ash/shell_factory.h" 31 #include "ash/shell_factory.h"
31 #include "ash/shell_window_ids.h" 32 #include "ash/shell_window_ids.h"
32 #include "ash/system/status_area_widget.h" 33 #include "ash/system/status_area_widget.h"
33 #include "ash/system/tray/system_tray.h" 34 #include "ash/system/tray/system_tray.h"
34 #include "ash/tooltips/tooltip_controller.h" 35 #include "ash/tooltips/tooltip_controller.h"
35 #include "ash/touch/touch_observer_hud.h" 36 #include "ash/touch/touch_observer_hud.h"
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 #include "ui/compositor/layer.h" 83 #include "ui/compositor/layer.h"
83 #include "ui/compositor/layer_animator.h" 84 #include "ui/compositor/layer_animator.h"
84 #include "ui/gfx/display.h" 85 #include "ui/gfx/display.h"
85 #include "ui/gfx/image/image_skia.h" 86 #include "ui/gfx/image/image_skia.h"
86 #include "ui/gfx/screen.h" 87 #include "ui/gfx/screen.h"
87 #include "ui/gfx/size.h" 88 #include "ui/gfx/size.h"
88 #include "ui/ui_controls/ui_controls.h" 89 #include "ui/ui_controls/ui_controls.h"
89 #include "ui/views/focus/focus_manager_factory.h" 90 #include "ui/views/focus/focus_manager_factory.h"
90 #include "ui/views/widget/native_widget_aura.h" 91 #include "ui/views/widget/native_widget_aura.h"
91 #include "ui/views/widget/widget.h" 92 #include "ui/views/widget/widget.h"
93 #include "ui/views/widget/widget_delegate.h"
oshima 2012/10/10 19:55:52 do you need this?
Zachary Kuznia 2012/10/11 08:57:24 Done.
92 94
93 #if !defined(OS_MACOSX) 95 #if !defined(OS_MACOSX)
94 #include "ash/accelerators/accelerator_controller.h" 96 #include "ash/accelerators/accelerator_controller.h"
95 #include "ash/accelerators/accelerator_filter.h" 97 #include "ash/accelerators/accelerator_filter.h"
96 #include "ash/accelerators/nested_dispatcher_controller.h" 98 #include "ash/accelerators/nested_dispatcher_controller.h"
97 #endif 99 #endif
98 100
99 #if defined(OS_CHROMEOS) 101 #if defined(OS_CHROMEOS)
100 #include "ash/display/output_configurator_animation.h" 102 #include "ash/display/output_configurator_animation.h"
101 #include "base/message_pump_aurax11.h" 103 #include "base/message_pump_aurax11.h"
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
245 // Closing the windows frees the workspace controller. 247 // Closing the windows frees the workspace controller.
246 shelf_->set_workspace_controller(NULL); 248 shelf_->set_workspace_controller(NULL);
247 // Destroy all child windows including widgets. 249 // Destroy all child windows including widgets.
248 display_controller_->CloseChildWindows(); 250 display_controller_->CloseChildWindows();
249 251
250 // These need a valid Shell instance to clean up properly, so explicitly 252 // These need a valid Shell instance to clean up properly, so explicitly
251 // delete them before invalidating the instance. 253 // delete them before invalidating the instance.
252 // Alphabetical. 254 // Alphabetical.
253 drag_drop_controller_.reset(); 255 drag_drop_controller_.reset();
254 magnification_controller_.reset(); 256 magnification_controller_.reset();
257 partial_magnification_controller_.reset();
255 power_button_controller_.reset(); 258 power_button_controller_.reset();
256 resize_shadow_controller_.reset(); 259 resize_shadow_controller_.reset();
257 shadow_controller_.reset(); 260 shadow_controller_.reset();
258 tooltip_controller_.reset(); 261 tooltip_controller_.reset();
259 event_client_.reset(); 262 event_client_.reset();
260 window_cycle_controller_.reset(); 263 window_cycle_controller_.reset();
261 capture_controller_.reset(); 264 capture_controller_.reset();
262 nested_dispatcher_controller_.reset(); 265 nested_dispatcher_controller_.reset();
263 user_action_client_.reset(); 266 user_action_client_.reset();
264 visibility_controller_.reset(); 267 visibility_controller_.reset();
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after
439 visibility_controller_.reset(new internal::VisibilityController); 442 visibility_controller_.reset(new internal::VisibilityController);
440 drag_drop_controller_.reset(new internal::DragDropController); 443 drag_drop_controller_.reset(new internal::DragDropController);
441 if (delegate_.get()) 444 if (delegate_.get())
442 user_action_client_.reset(delegate_->CreateUserActionClient()); 445 user_action_client_.reset(delegate_->CreateUserActionClient());
443 window_modality_controller_.reset(new internal::WindowModalityController); 446 window_modality_controller_.reset(new internal::WindowModalityController);
444 AddEnvEventFilter(window_modality_controller_.get()); 447 AddEnvEventFilter(window_modality_controller_.get());
445 448
446 magnification_controller_.reset( 449 magnification_controller_.reset(
447 internal::MagnificationController::CreateInstance()); 450 internal::MagnificationController::CreateInstance());
448 451
452 partial_magnification_controller_.reset(
453 internal::PartialMagnificationController::CreateInstance());
454
449 high_contrast_controller_.reset(new HighContrastController); 455 high_contrast_controller_.reset(new HighContrastController);
450 video_detector_.reset(new VideoDetector); 456 video_detector_.reset(new VideoDetector);
451 window_cycle_controller_.reset( 457 window_cycle_controller_.reset(
452 new WindowCycleController(activation_controller_.get())); 458 new WindowCycleController(activation_controller_.get()));
453 459
454 tooltip_controller_.reset(new internal::TooltipController( 460 tooltip_controller_.reset(new internal::TooltipController(
455 drag_drop_controller_.get())); 461 drag_drop_controller_.get()));
456 AddEnvEventFilter(tooltip_controller_.get()); 462 AddEnvEventFilter(tooltip_controller_.get());
457 463
458 event_client_.reset(new internal::EventClientImpl); 464 event_client_.reset(new internal::EventClientImpl);
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
500 506
501 // It needs to be created after OnWindowResized has been called, otherwise the 507 // It needs to be created after OnWindowResized has been called, otherwise the
502 // widget will not paint when restoring after a browser crash. Also it needs 508 // widget will not paint when restoring after a browser crash. Also it needs
503 // to be created after InitSecondaryDisplays() to initialize the wallpapers in 509 // to be created after InitSecondaryDisplays() to initialize the wallpapers in
504 // the correct size. 510 // the correct size.
505 user_wallpaper_delegate_->InitializeWallpaper(); 511 user_wallpaper_delegate_->InitializeWallpaper();
506 512
507 power_button_controller_.reset(new PowerButtonController); 513 power_button_controller_.reset(new PowerButtonController);
508 AddShellObserver(power_button_controller_.get()); 514 AddShellObserver(power_button_controller_.get());
509 515
516 //display_controller_->InitSecondaryDisplays();
oshima 2012/10/10 19:55:52 remove this.
Zachary Kuznia 2012/10/11 08:57:24 Done.
517
510 if (initially_hide_cursor_) 518 if (initially_hide_cursor_)
511 cursor_manager_.ShowCursor(false); 519 cursor_manager_.ShowCursor(false);
512 520
513 // Cursor might have been hidden by somethign other than chrome. 521 // Cursor might have been hidden by somethign other than chrome.
514 // Let the first mouse event show the cursor. 522 // Let the first mouse event show the cursor.
515 env_filter_->set_cursor_hidden_by_filter(true); 523 env_filter_->set_cursor_hidden_by_filter(true);
516 } 524 }
517 525
518 void Shell::AddEnvEventFilter(aura::EventFilter* filter) { 526 void Shell::AddEnvEventFilter(aura::EventFilter* filter) {
519 aura::Env::GetInstance()->AddPreTargetHandler(filter); 527 aura::Env::GetInstance()->AddPreTargetHandler(filter);
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after
825 iter != controllers.end(); ++iter) { 833 iter != controllers.end(); ++iter) {
826 if ((*iter)->GetSystemModalLayoutManager()-> 834 if ((*iter)->GetSystemModalLayoutManager()->
827 CanWindowReceiveEvents(window)) { 835 CanWindowReceiveEvents(window)) {
828 return true; 836 return true;
829 } 837 }
830 } 838 }
831 return false; 839 return false;
832 } 840 }
833 841
834 } // namespace ash 842 } // namespace ash
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698