#include "chrome/browser/first_run/first_run_internal.h"
#include "base/functional/callback.h"
#include "base/no_destructor.h"
#include "build/branding_buildflags.h"
#include "build/build_config.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/first_run/first_run.h"
#include "chrome/browser/first_run/first_run_dialog.h"
#include "chrome/browser/metrics/metrics_reporting_state.h"
#include "components/metrics/metrics_pref_names.h"
#include "components/metrics/metrics_reporting_default_state.h"
#include "components/startup_metric_utils/browser/startup_metric_utils.h"
#if BUILDFLAG(IS_CHROMEOS)
#error "Chrome OS should use first_run_internal_chromeos.cc."
#endif
namespace first_run {
base::OnceClosure& GetBeforeShowFirstRunDialogHookForTesting() { … }
namespace internal {
namespace {
enum class ForcedShowDialogState { … };
ForcedShowDialogState g_forced_show_dialog_state = …;
bool ShouldShowFirstRunDialog() { … }
}
void ForceFirstRunDialogShownForTesting(bool shown) { … }
void DoPostImportPlatformSpecificTasks() { … }
bool ShowPostInstallEULAIfNeeded(installer::InitialPreferences* install_prefs) { … }
}
}