#include "chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.h"
#include "base/logging.h"
#include "base/metrics/histogram_functions.h"
#include "base/task/sequenced_task_runner.h"
#include "chrome/browser/affiliations/affiliation_service_factory.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/url_constants.h"
#include "chrome/common/webui_url_constants.h"
#include "components/affiliations/core/browser/affiliation_service.h"
#include "components/password_manager/core/browser/well_known_change_password/well_known_change_password_state.h"
#include "components/password_manager/core/browser/well_known_change_password/well_known_change_password_util.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/navigation_handle.h"
#include "content/public/browser/page_navigator.h"
#include "content/public/browser/storage_partition.h"
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_user_data.h"
#include "net/base/isolation_info.h"
#include "services/metrics/public/cpp/ukm_builders.h"
#include "services/metrics/public/cpp/ukm_recorder.h"
#include "services/network/public/cpp/shared_url_loader_factory.h"
#include "ui/base/page_transition_types.h"
#include "url/gurl.h"
#include "url/origin.h"
namespace {
NavigationHandle;
NavigationThrottle;
WebContents;
IsWellKnownChangePasswordUrl;
WellKnownChangePasswordResult;
WellKnownChangePasswordState;
bool IsTriggeredByGoogleOwnedUI(NavigationHandle* handle) { … }
}
std::unique_ptr<WellKnownChangePasswordNavigationThrottle>
WellKnownChangePasswordNavigationThrottle::MaybeCreateThrottleFor(
NavigationHandle* handle) { … }
WellKnownChangePasswordNavigationThrottle::
WellKnownChangePasswordNavigationThrottle(NavigationHandle* handle)
: … { … }
WellKnownChangePasswordNavigationThrottle::
~WellKnownChangePasswordNavigationThrottle() = default;
NavigationThrottle::ThrottleCheckResult
WellKnownChangePasswordNavigationThrottle::WillStartRequest() { … }
NavigationThrottle::ThrottleCheckResult
WellKnownChangePasswordNavigationThrottle::WillFailRequest() { … }
NavigationThrottle::ThrottleCheckResult
WellKnownChangePasswordNavigationThrottle::WillProcessResponse() { … }
const char* WellKnownChangePasswordNavigationThrottle::GetNameForLogging() { … }
void WellKnownChangePasswordNavigationThrottle::OnProcessingFinished(
bool is_supported) { … }
void WellKnownChangePasswordNavigationThrottle::Redirect(const GURL& url) { … }
void WellKnownChangePasswordNavigationThrottle::RecordMetric(
WellKnownChangePasswordResult result) { … }