Chromium Code Reviews| Index: chrome/browser/ui/browser.cc |
| diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc |
| index 72b6f33163898ed4e6ea749d8eaf4bfeef905642..1629c216137b0ee2569d59a32068d633eeaa929b 100644 |
| --- a/chrome/browser/ui/browser.cc |
| +++ b/chrome/browser/ui/browser.cc |
| @@ -57,6 +57,7 @@ |
| #include "chrome/browser/prefs/incognito_mode_prefs.h" |
| #include "chrome/browser/prefs/pref_service.h" |
| #include "chrome/browser/printing/cloud_print/cloud_print_setup_flow.h" |
| +#include "chrome/browser/printing/print_preview_tab_controller.h" |
| #include "chrome/browser/profiles/profile.h" |
| #include "chrome/browser/sessions/restore_tab_helper.h" |
| #include "chrome/browser/sessions/session_service.h" |
| @@ -1757,6 +1758,10 @@ void Browser::Print() { |
| GetSelectedTabContentsWrapper()->print_view_manager()->PrintNow(); |
| } |
| +void Browser::AdvancedPrint() { |
| + GetSelectedTabContentsWrapper()->print_view_manager()->AdvancedPrintNow(); |
| +} |
| + |
| void Browser::ToggleEncodingAutoDetect() { |
| UserMetrics::RecordAction(UserMetricsAction("AutoDetectChange")); |
| encoding_auto_detect_.SetValue(!encoding_auto_detect_.GetValue()); |
| @@ -2430,6 +2435,7 @@ void Browser::ExecuteCommandWithDisposition( |
| case IDC_VIEW_SOURCE: ViewSelectedSource(); break; |
| case IDC_EMAIL_PAGE_LOCATION: EmailPageLocation(); break; |
| case IDC_PRINT: Print(); break; |
| + case IDC_ADVANCED_PRINT: AdvancedPrint(); break; |
| case IDC_ENCODING_AUTO_DETECT: ToggleEncodingAutoDetect(); break; |
| case IDC_ENCODING_UTF8: |
| case IDC_ENCODING_UTF16LE: |
| @@ -4159,13 +4165,18 @@ void Browser::UpdateCommandsForContentRestrictionState() { |
| void Browser::UpdatePrintingState(int content_restrictions) { |
| bool enabled = true; |
| + bool is_preview_tab = true; |
|
Lei Zhang
2011/08/25 09:05:49
This variable is poorly named. It's true in some c
kmadhusu
2011/08/25 17:51:48
Fixed...
|
| if (content_restrictions & CONTENT_RESTRICTION_PRINT) { |
| enabled = false; |
| + is_preview_tab = printing::PrintPreviewTabController::IsPrintPreviewTab( |
| + GetSelectedTabContents()); |
| } else if (g_browser_process->local_state()) { |
| enabled = g_browser_process->local_state()-> |
| GetBoolean(prefs::kPrintingEnabled); |
| } |
| command_updater_.UpdateCommandEnabled(IDC_PRINT, enabled); |
| + command_updater_.UpdateCommandEnabled(IDC_ADVANCED_PRINT, |
| + is_preview_tab ? true : enabled); |
| } |
| void Browser::UpdateReloadStopState(bool is_loading, bool force) { |