#include "pdf/pdf_features.h"
#include "base/feature_list.h"
#include "base/metrics/field_trial_params.h"
#include "build/build_config.h"
#include "pdf/buildflags.h"
namespace chrome_pdf::features {
namespace {
bool g_is_oopif_pdf_policy_enabled = true;
}
BASE_FEATURE(kAccessiblePDFForm, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfIncrementalLoading, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfOopif, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfPartialLoading, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfPortfolio, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfGetSaveDataInBlocks, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfSearchifySave, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfTags, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfUseShowSaveFilePicker, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfUseSkiaRenderer, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfXfaSupport, base::FEATURE_DISABLED_BY_DEFAULT);
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
BASE_FEATURE(kPdfiumPerRequestFontMatching, base::FEATURE_ENABLED_BY_DEFAULT);
#endif
#if BUILDFLAG(ENABLE_PDF_INK2)
BASE_FEATURE(kPdfInk2, base::FEATURE_ENABLED_BY_DEFAULT);
const base::FeatureParam<bool> kPdfInk2TextAnnotations{
&kPdfInk2, "text-annotations", false};
const base::FeatureParam<bool> kPdfInk2TextHighlighting{
&kPdfInk2, "text-highlighting", false};
#endif
#if BUILDFLAG(ENABLE_PDF_SAVE_TO_DRIVE)
BASE_FEATURE(kPdfSaveToDrive, base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kPdfSaveToDriveSurvey, base::FEATURE_DISABLED_BY_DEFAULT);
const base::FeatureParam<std::string> kPdfSaveToDriveSurveyConsumerTriggerId{
&kPdfSaveToDriveSurvey, "consumer-trigger-id", ""};
const base::FeatureParam<std::string> kPdfSaveToDriveSurveyEnterpriseTriggerId{
&kPdfSaveToDriveSurvey, "enterprise-trigger-id", ""};
#endif
void SetIsOopifPdfPolicyEnabled(bool is_oopif_pdf_policy_enabled) {
g_is_oopif_pdf_policy_enabled = is_oopif_pdf_policy_enabled;
}
bool IsOopifPdfEnabled() {
return g_is_oopif_pdf_policy_enabled &&
base::FeatureList::IsEnabled(kPdfOopif);
}
}