[Document Policy] Supports runtime flag controlled default value
Example config in "document_policy_features.cc": { name: "DefaultValueFeatureForTest", document_policy_name: "_reserved", value_type: "Bool", default_value: "true", depends_on: [], default_value_behind_flag: [ ["PaintHolding", "false"], ["ScriptStreaming", "true"], ] }, Generated output: const DocumentPolicyFeatureInfoMap& GetDocumentPolicyFeatureInfoMap() { static const base::NoDestructor<DocumentPolicyFeatureInfoMap> feature_info_map([] { DocumentPolicyFeatureInfoMap map({ { mojom::DocumentPolicyFeature::kDefaultValueFeatureForTest, { "", PolicyValue::CreateBool(true) } }, ...}); if (base::FeatureList::IsEnabled(features::kPaintHolding)) { map.insert_or_assign( mojom::DocumentPolicyFeature::kDefaultValueFeatureForTest, DocumentPolicyFeatureInfo { "", PolicyValue::CreateBool(false) } ); } else if (base::FeatureList::IsEnabled(features::kScriptStreaming)) { map.insert_or_assign( mojom::DocumentPolicyFeature::kDefaultValueFeatureForTest, DocumentPolicyFeatureInfo { "", PolicyValue::CreateBool(true) } ); } return map; }()); return *feature_info_map; } Bug: 1166698 Change-Id: Ib0bf5905ddcccface2673486181616662c6e2b7a Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2534612 Commit-Queue: Charlie Hu <chenleihu@google.com> Reviewed-by:Alex Moshchuk <alexmos@chromium.org> Reviewed-by:
Daniel Cheng <dcheng@chromium.org> Reviewed-by:
Ian Clelland <iclelland@chromium.org> Cr-Commit-Position: refs/heads/master@{#843716}
Showing
Please register or sign in to comment