Chromium Code Reviews| Index: chrome/browser/ui/zoom/zoom_controller.cc |
| diff --git a/chrome/browser/ui/zoom/zoom_controller.cc b/chrome/browser/ui/zoom/zoom_controller.cc |
| index 95ab757f3f7d5bf75cc7c3956e7045ae7fb3afae..45b087588422f4aa7e43ecaff35b2339ffb9538f 100644 |
| --- a/chrome/browser/ui/zoom/zoom_controller.cc |
| +++ b/chrome/browser/ui/zoom/zoom_controller.cc |
| @@ -12,6 +12,7 @@ |
| #include "content/public/browser/render_process_host.h" |
| #include "content/public/browser/render_view_host.h" |
| #include "content/public/browser/web_contents.h" |
| +#include "content/public/common/page_type.h" |
| #include "content/public/common/page_zoom.h" |
| #include "extensions/common/extension.h" |
| #include "grit/theme_resources.h" |
| @@ -78,10 +79,14 @@ bool ZoomController::SetZoomLevel(double zoom_level) { |
| bool ZoomController::SetZoomLevelByExtension( |
| double zoom_level, |
| const scoped_refptr<const extensions::Extension>& extension) { |
| + bool is_error_page = |
| + web_contents()->GetController().GetLastCommittedEntry()->GetPageType() == |
| + content::PAGE_TYPE_ERROR; |
| // Cannot zoom in disabled mode. Also, don't allow changing zoom level on |
| - // a crashed tab. |
| + // a crashed tab or an error page. |
|
Charlie Reis
2014/09/24 16:43:43
Sanity check: I realize that changing the zoom lev
wjmaclean
2014/09/24 17:59:11
Good observation ... let's do this: make error & i
Charlie Reis
2014/09/24 18:08:52
Sounds perfect-- thanks.
|
| if (zoom_mode_ == ZOOM_MODE_DISABLED || |
| - !web_contents()->GetRenderViewHost()->IsRenderViewLive()) |
| + !web_contents()->GetRenderViewHost()->IsRenderViewLive() || |
| + is_error_page) |
| return false; |
| // Store extension data so that |extension| can be attributed when the zoom |