| 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 "chrome/browser/ui/extensions/shell_window.h" | 5 #include "chrome/browser/ui/extensions/shell_window.h" |
| 6 | 6 |
| 7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
| 8 #include "chrome/browser/extensions/extension_process_manager.h" | 8 #include "chrome/browser/extensions/extension_process_manager.h" |
| 9 #include "chrome/browser/extensions/extension_system.h" | 9 #include "chrome/browser/extensions/extension_system.h" |
| 10 #include "chrome/browser/extensions/shell_window_geometry_cache.h" | 10 #include "chrome/browser/extensions/shell_window_geometry_cache.h" |
| (...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 413 const content::NotificationDetails& details) { | 413 const content::NotificationDetails& details) { |
| 414 switch (type) { | 414 switch (type) { |
| 415 case content::NOTIFICATION_RENDER_VIEW_HOST_CHANGED: { | 415 case content::NOTIFICATION_RENDER_VIEW_HOST_CHANGED: { |
| 416 // TODO(jeremya): once http://crbug.com/123007 is fixed, we'll no longer | 416 // TODO(jeremya): once http://crbug.com/123007 is fixed, we'll no longer |
| 417 // need to suspend resource requests here (the call in the constructor | 417 // need to suspend resource requests here (the call in the constructor |
| 418 // should be enough). | 418 // should be enough). |
| 419 content::Details<std::pair<RenderViewHost*, RenderViewHost*> > | 419 content::Details<std::pair<RenderViewHost*, RenderViewHost*> > |
| 420 host_details(details); | 420 host_details(details); |
| 421 if (host_details->first) | 421 if (host_details->first) |
| 422 SuspendRenderViewHost(host_details->second); | 422 SuspendRenderViewHost(host_details->second); |
| 423 // TODO(jianli): once http://crbug.com/123007 is fixed, we'll no longer |
| 424 // need to make the native window (ShellWindowViews specially) update |
| 425 // the clickthrough region for the new RVH. |
| 426 native_window_->RenderViewHostChanged(); |
| 423 break; | 427 break; |
| 424 } | 428 } |
| 425 case chrome::NOTIFICATION_EXTENSION_UNLOADED: { | 429 case chrome::NOTIFICATION_EXTENSION_UNLOADED: { |
| 426 const extensions::Extension* unloaded_extension = | 430 const extensions::Extension* unloaded_extension = |
| 427 content::Details<extensions::UnloadedExtensionInfo>( | 431 content::Details<extensions::UnloadedExtensionInfo>( |
| 428 details)->extension; | 432 details)->extension; |
| 429 if (extension_ == unloaded_extension) | 433 if (extension_ == unloaded_extension) |
| 430 native_window_->Close(); | 434 native_window_->Close(); |
| 431 break; | 435 break; |
| 432 } | 436 } |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 484 const extensions::DraggableRegion& region = *iter; | 488 const extensions::DraggableRegion& region = *iter; |
| 485 sk_region->op( | 489 sk_region->op( |
| 486 region.bounds.x(), | 490 region.bounds.x(), |
| 487 region.bounds.y(), | 491 region.bounds.y(), |
| 488 region.bounds.right(), | 492 region.bounds.right(), |
| 489 region.bounds.bottom(), | 493 region.bounds.bottom(), |
| 490 region.draggable ? SkRegion::kUnion_Op : SkRegion::kDifference_Op); | 494 region.draggable ? SkRegion::kUnion_Op : SkRegion::kDifference_Op); |
| 491 } | 495 } |
| 492 return sk_region; | 496 return sk_region; |
| 493 } | 497 } |
| OLD | NEW |