#include "components/safe_browsing/content/renderer/phishing_classifier/phishing_image_embedder_delegate.h"
#include <memory>
#include <optional>
#include <set>
#include <utility>
#include "base/metrics/histogram_macros.h"
#include "components/safe_browsing/content/common/safe_browsing.mojom-shared.h"
#include "components/safe_browsing/content/renderer/phishing_classifier/phishing_image_embedder.h"
#include "components/safe_browsing/content/renderer/phishing_classifier/scorer.h"
#include "components/safe_browsing/core/common/proto/csd.pb.h"
#include "content/public/renderer/render_frame.h"
#include "content/public/renderer/render_thread.h"
#include "mojo/public/cpp/base/proto_wrapper.h"
#include "third_party/blink/public/common/associated_interfaces/associated_interface_registry.h"
#include "third_party/blink/public/web/web_document.h"
#include "third_party/blink/public/web/web_local_frame.h"
#include "third_party/blink/public/web/web_view.h"
RenderThread;
namespace safe_browsing {
namespace {
GURL StripRef(const GURL& url) { … }
}
PhishingImageEmbedderDelegate::PhishingImageEmbedderDelegate(
content::RenderFrame* render_frame)
: … { … }
PhishingImageEmbedderDelegate::~PhishingImageEmbedderDelegate() { … }
PhishingImageEmbedderDelegate* PhishingImageEmbedderDelegate::Create(
content::RenderFrame* render_frame) { … }
void PhishingImageEmbedderDelegate::PhishingImageEmbedderReceiver(
mojo::PendingAssociatedReceiver<mojom::PhishingImageEmbedderDetector>
receiver) { … }
void PhishingImageEmbedderDelegate::StartImageEmbedding(
const GURL& url,
StartImageEmbeddingCallback callback) { … }
void PhishingImageEmbedderDelegate::DidCommitProvisionalLoad(
ui::PageTransition transition) { … }
void PhishingImageEmbedderDelegate::DidFinishSameDocumentNavigation() { … }
bool PhishingImageEmbedderDelegate::is_ready() const { … }
void PhishingImageEmbedderDelegate::MaybeStartImageEmbedding() { … }
void PhishingImageEmbedderDelegate::PageCaptured(bool preliminary_capture) { … }
void PhishingImageEmbedderDelegate::CancelPendingImageEmbedding(
CancelImageEmbeddingReason reason) { … }
void PhishingImageEmbedderDelegate::ImageEmbeddingDone(
const ImageFeatureEmbedding& image_feature_embedding) { … }
void PhishingImageEmbedderDelegate::RecordEvent(
SBPhishingImageEmbedderEvent event) { … }
void PhishingImageEmbedderDelegate::OnDestruct() { … }
void PhishingImageEmbedderDelegate::OnScorerChanged() { … }
}