#include "chrome/browser/user_annotations/user_annotations_web_contents_observer.h"
#include <memory>
#include "base/check_deref.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/autofill/autofill_client_provider.h"
#include "chrome/browser/ui/autofill/autofill_client_provider_factory.h"
#include "chrome/browser/user_annotations/user_annotations_service_factory.h"
#include "components/autofill/content/browser/scoped_autofill_managers_observation.h"
#include "components/compose/buildflags.h"
#include "components/optimization_guide/proto/features/compose.pb.h"
#include "components/user_annotations/user_annotations_features.h"
#include "components/user_annotations/user_annotations_service.h"
#include "content/public/browser/web_contents.h"
#include "ui/accessibility/ax_tree_update.h"
#if BUILDFLAG(ENABLE_COMPOSE)
#include "chrome/browser/compose/compose_ax_serialization_utils.h"
#endif
namespace user_annotations {
UserAnnotationsWebContentsObserver::UserAnnotationsWebContentsObserver(
content::WebContents* web_contents,
user_annotations::UserAnnotationsService* user_annotations_service)
: … { … }
UserAnnotationsWebContentsObserver::~UserAnnotationsWebContentsObserver() =
default;
std::unique_ptr<UserAnnotationsWebContentsObserver>
UserAnnotationsWebContentsObserver::MaybeCreateForWebContents(
content::WebContents* web_contents) { … }
void UserAnnotationsWebContentsObserver::OnFormSubmitted(
autofill::AutofillManager& manager,
const autofill::FormData& form) { … }
void UserAnnotationsWebContentsObserver::OnAXTreeSnapshotted(
const autofill::FormData& form,
ui::AXTreeUpdate& snapshot) { … }
}