From bdea700bfb9fd4714933aef13b765cfc3fed8587 Mon Sep 17 00:00:00 2001 From: Nikita Podguzov Date: Fri, 10 Apr 2020 11:30:27 +0000 Subject: [PATCH] Printing: Delete PrintingAllowedPageSizes policy We are not going to have page size restriction policy in the near future. If we ever implement this policy it will have more scalable format (see follow-up CL). Taking into the account the above, we delete PrintingAllowedPageSizes policy from the code. It's safe as we have never released this policy ('future': 'true') and have even never had appropriate handler for it. Bug: 1015690 Change-Id: I38129f8012e82c6a27413597b615c3111593d821 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2135690 Commit-Queue: Nikita Podguzov Reviewed-by: Lei Zhang Reviewed-by: Maksim Ivanov Cr-Commit-Position: refs/heads/master@{#758184} --- ...nfiguration_policy_handler_list_factory.cc | 2 - .../printing_restrictions_policy_handler.cc | 22 ----------- .../printing_restrictions_policy_handler.h | 10 ----- chrome/browser/prefs/browser_prefs.cc | 7 ++++ .../ui/webui/print_preview/policy_settings.cc | 1 - chrome/common/pref_names.cc | 4 -- chrome/common/pref_names.h | 1 - .../test/data/policy/policy_test_cases.json | 10 ----- .../policy/resources/policy_templates.json | 37 +------------------ printing/backend/printing_restrictions.h | 3 +- tools/metrics/histograms/enums.xml | 1 - 11 files changed, 9 insertions(+), 89 deletions(-) diff --git a/chrome/browser/policy/configuration_policy_handler_list_factory.cc b/chrome/browser/policy/configuration_policy_handler_list_factory.cc index 2362f3047dc8e0..9f31a0ef68af17 100644 --- a/chrome/browser/policy/configuration_policy_handler_list_factory.cc +++ b/chrome/browser/policy/configuration_policy_handler_list_factory.cc @@ -1577,8 +1577,6 @@ std::unique_ptr BuildHandlerList( std::make_unique()); handlers->AddHandler( std::make_unique()); - handlers->AddHandler( - std::make_unique()); handlers->AddHandler(std::make_unique()); handlers->AddHandler(std::make_unique()); handlers->AddHandler(std::make_unique()); diff --git a/chrome/browser/policy/printing_restrictions_policy_handler.cc b/chrome/browser/policy/printing_restrictions_policy_handler.cc index 439120bf8cca1d..412bd8b6304b62 100644 --- a/chrome/browser/policy/printing_restrictions_policy_handler.cc +++ b/chrome/browser/policy/printing_restrictions_policy_handler.cc @@ -140,28 +140,6 @@ PrintingPinDefaultPolicyHandler::PrintingPinDefaultPolicyHandler() PrintingPinDefaultPolicyHandler::~PrintingPinDefaultPolicyHandler() = default; -PrintingAllowedPageSizesPolicyHandler::PrintingAllowedPageSizesPolicyHandler() - : ListPolicyHandler(key::kPrintingAllowedPageSizes, - base::Value::Type::DICTIONARY) {} - -PrintingAllowedPageSizesPolicyHandler:: - ~PrintingAllowedPageSizesPolicyHandler() {} - -bool PrintingAllowedPageSizesPolicyHandler::CheckListEntry( - const base::Value& value) { - if (!value.is_dict()) - return false; - const base::Value* width = value.FindKey(printing::kPageWidthUm); - const base::Value* height = value.FindKey(printing::kPageHeightUm); - return width && height && width->is_int() && height->is_int(); -} - -void PrintingAllowedPageSizesPolicyHandler::ApplyList(base::Value filtered_list, - PrefValueMap* prefs) { - DCHECK(filtered_list.is_list()); - prefs->SetValue(prefs::kPrintingAllowedPageSizes, std::move(filtered_list)); -} - PrintingSizeDefaultPolicyHandler::PrintingSizeDefaultPolicyHandler() : TypeCheckingPolicyHandler(key::kPrintingSizeDefault, base::Value::Type::DICTIONARY) {} diff --git a/chrome/browser/policy/printing_restrictions_policy_handler.h b/chrome/browser/policy/printing_restrictions_policy_handler.h index bb388bd16ac83a..8cfde62ad39fe3 100644 --- a/chrome/browser/policy/printing_restrictions_policy_handler.h +++ b/chrome/browser/policy/printing_restrictions_policy_handler.h @@ -89,16 +89,6 @@ class PrintingPinDefaultPolicyHandler ~PrintingPinDefaultPolicyHandler() override; }; -class PrintingAllowedPageSizesPolicyHandler : public ListPolicyHandler { - public: - PrintingAllowedPageSizesPolicyHandler(); - ~PrintingAllowedPageSizesPolicyHandler() override; - - // ListPolicyHandler implementation: - bool CheckListEntry(const base::Value& value) override; - void ApplyList(base::Value filtered_list, PrefValueMap* prefs) override; -}; - class PrintingSizeDefaultPolicyHandler : public TypeCheckingPolicyHandler { public: PrintingSizeDefaultPolicyHandler(); diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc index ed8ff105c074c6..c8be1d9e86d8f4 100644 --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc @@ -517,6 +517,9 @@ const char kInvalidatorSavedInvalidations[] = "invalidator.saved_invalidations"; #if defined(OS_CHROMEOS) // Deprecated 4/2020 const char kAmbientModeTopicSource[] = "settings.ambient_mode.topic_source"; + +// Deprecated 4/2020 +const char kPrintingAllowedPageSizes[] = "printing.allowed_page_sizes"; #endif // defined(OS_CHROMEOS) // Register local state used only for migration (clearing or moving to a new @@ -609,6 +612,7 @@ void RegisterProfilePrefsForMigration( #if defined(OS_CHROMEOS) registry->RegisterIntegerPref(kAmbientModeTopicSource, 0); + registry->RegisterListPref(kPrintingAllowedPageSizes); #endif // defined(OS_CHROMEOS) } @@ -1209,5 +1213,8 @@ void MigrateObsoleteProfilePrefs(Profile* profile) { #if defined(OS_CHROMEOS) // Added 4/2020. profile_prefs->ClearPref(kAmbientModeTopicSource); + + // Added 4/2020. + profile_prefs->ClearPref(kPrintingAllowedPageSizes); #endif } diff --git a/chrome/browser/ui/webui/print_preview/policy_settings.cc b/chrome/browser/ui/webui/print_preview/policy_settings.cc index 55818d2dff885f..dc3465972214e8 100644 --- a/chrome/browser/ui/webui/print_preview/policy_settings.cc +++ b/chrome/browser/ui/webui/print_preview/policy_settings.cc @@ -21,7 +21,6 @@ void PolicySettings::RegisterProfilePrefs( registry->RegisterIntegerPref(prefs::kPrintingAllowedColorModes, 0); registry->RegisterIntegerPref(prefs::kPrintingAllowedDuplexModes, 0); registry->RegisterIntegerPref(prefs::kPrintingAllowedPinModes, 0); - registry->RegisterListPref(prefs::kPrintingAllowedPageSizes); registry->RegisterIntegerPref(prefs::kPrintingColorDefault, 0); registry->RegisterIntegerPref(prefs::kPrintingDuplexDefault, 0); registry->RegisterIntegerPref(prefs::kPrintingPinDefault, 0); diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc index b5e5a0c2e69fbb..87c316c3bf4c81 100644 --- a/chrome/common/pref_names.cc +++ b/chrome/common/pref_names.cc @@ -1418,10 +1418,6 @@ const char kPrintingAllowedDuplexModes[] = "printing.allowed_duplex_modes"; // A pref holding the allowed PIN printing modes. const char kPrintingAllowedPinModes[] = "printing.allowed_pin_modes"; -// A pref holding the list of allowed printing duplex mode. -// Empty list is no restriction. -const char kPrintingAllowedPageSizes[] = "printing.allowed_page_sizes"; - // A pref holding the default color mode. const char kPrintingColorDefault[] = "printing.color_default"; diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h index 53cf03d1af2edb..df514ad0971166 100644 --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h @@ -446,7 +446,6 @@ extern const char kUserNativePrintersAllowed[]; extern const char kPrintingAllowedColorModes[]; extern const char kPrintingAllowedDuplexModes[]; extern const char kPrintingAllowedPinModes[]; -extern const char kPrintingAllowedPageSizes[]; extern const char kPrintingColorDefault[]; extern const char kPrintingDuplexDefault[]; extern const char kPrintingPinDefault[]; diff --git a/chrome/test/data/policy/policy_test_cases.json b/chrome/test/data/policy/policy_test_cases.json index b4709575b443fe..d6f411c766ccc7 100644 --- a/chrome/test/data/policy/policy_test_cases.json +++ b/chrome/test/data/policy/policy_test_cases.json @@ -403,16 +403,6 @@ ] }, - "PrintingAllowedPageSizes": { - "os": ["chromeos"], - "policy_pref_mapping_test": [ - { - "policies": { "PrintingAllowedPageSizes": [{ "WidthUm": 210000, "HeightUm": 297000 }] }, - "prefs": { "printing.allowed_page_sizes": {} } - } - ] - }, - "PrintingColorDefault": { "os": ["chromeos"], "policy_pref_mapping_test": [ diff --git a/components/policy/resources/policy_templates.json b/components/policy/resources/policy_templates.json index e78f8d900ccc0d..25e8c9105d6e82 100644 --- a/components/policy/resources/policy_templates.json +++ b/components/policy/resources/policy_templates.json @@ -984,7 +984,6 @@ 'PrintingAllowedDuplexModes', 'PrintingAllowedPinModes', 'PrintingAllowedBackgroundGraphicsModes', - 'PrintingAllowedPageSizes', 'PrintingColorDefault', 'PrintingDuplexDefault', 'PrintingPinDefault', @@ -2324,40 +2323,6 @@ 'tags': [], 'desc': '''Restricts background graphics printing mode. Unset policy is treated as no restriction.''', }, - { - 'name': 'PrintingAllowedPageSizes', - 'owners': ['vkuzkokov@chromium.org'], - 'type': 'dict', - 'schema': { - 'type': 'array', - 'items': { - 'type': 'object', - 'properties': { - 'WidthUm': { - 'description': '''Width of the page in micrometers''', - 'type': 'integer', - }, - 'HeightUm': { - 'description': '''Height of the page in micrometers''', - 'type': 'integer', - }, - }, - 'required': ['WidthUm', 'HeightUm'], - }, - }, - 'supported_on': ['chrome_os:72-'], - 'future': True, - 'features': { - 'can_be_recommended': False, - 'dynamic_refresh': True, - 'per_profile': True, - }, - 'example_value': [{'WidthUm': 210000, 'HeightUm': 297000}], - 'id': 476, - 'caption': '''Restrict printing page size''', - 'tags': [], - 'desc': '''Restricts printing page size. Unset policy and empty set are treated as no restriction.''', - }, { 'name': 'PrintingColorDefault', 'owners': ['vkuzkokov@chromium.org'], @@ -21323,7 +21288,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio }, ], 'placeholders': [], - 'deleted_policy_ids': [412, 546, 562, 569, 578], + 'deleted_policy_ids': [412, 476, 546, 562, 569, 578], 'highest_id_currently_used': 691, 'highest_atomic_group_id_currently_used': 38 } diff --git a/printing/backend/printing_restrictions.h b/printing/backend/printing_restrictions.h index 718e5ae2a20f1c..899204367d6362 100644 --- a/printing/backend/printing_restrictions.h +++ b/printing/backend/printing_restrictions.h @@ -53,8 +53,7 @@ PRINTING_EXPORT extern const char kDefaultColorMode[]; PRINTING_EXPORT extern const char kDefaultDuplexMode[]; PRINTING_EXPORT extern const char kDefaultPinMode[]; -// Dictionary keys to be used with |kPrintingAllowedPageSizes| and -// |kPrintingSizeDefault| policies. +// Dictionary keys to be used with |kPrintingSizeDefault| policy. PRINTING_EXPORT extern const char kPageWidthUm[]; PRINTING_EXPORT extern const char kPageHeightUm[]; diff --git a/tools/metrics/histograms/enums.xml b/tools/metrics/histograms/enums.xml index cecc259509a84e..ac1479ab2429a9 100644 --- a/tools/metrics/histograms/enums.xml +++ b/tools/metrics/histograms/enums.xml @@ -19741,7 +19741,6 @@ to ensure that the crash string is shown properly on the user-facing crash UI. -