#include "third_party/blink/renderer/core/loader/form_submission.h"
#include "services/network/public/cpp/is_potentially_trustworthy.h"
#include "third_party/blink/public/common/security_context/insecure_request_policy.h"
#include "third_party/blink/public/mojom/frame/frame.mojom-blink.h"
#include "third_party/blink/public/mojom/security_context/insecure_request_policy.mojom-blink.h"
#include "third_party/blink/renderer/bindings/core/v8/capture_source_location.h"
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/dom/events/event.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/frame/local_frame.h"
#include "third_party/blink/renderer/core/frame/policy_container.h"
#include "third_party/blink/renderer/core/frame/settings.h"
#include "third_party/blink/renderer/core/frame/web_feature.h"
#include "third_party/blink/renderer/core/html/forms/form_data.h"
#include "third_party/blink/renderer/core/html/forms/html_form_control_element.h"
#include "third_party/blink/renderer/core/html/forms/html_form_element.h"
#include "third_party/blink/renderer/core/html/parser/html_parser_idioms.h"
#include "third_party/blink/renderer/core/html_names.h"
#include "third_party/blink/renderer/core/loader/frame_load_request.h"
#include "third_party/blink/renderer/core/loader/frame_loader.h"
#include "third_party/blink/renderer/platform/bindings/source_location.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_request.h"
#include "third_party/blink/renderer/platform/network/encoded_form_data.h"
#include "third_party/blink/renderer/platform/network/form_data_encoder.h"
#include "third_party/blink/renderer/platform/network/http_names.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
#include "third_party/blink/renderer/platform/wtf/text/text_encoding.h"
namespace blink {
static int64_t GenerateFormDataIdentifier() { … }
static void AppendMailtoPostFormDataToURL(KURL& url,
const EncodedFormData& data,
const String& encoding_type) { … }
void FormSubmission::Attributes::ParseAction(const String& action) { … }
AtomicString FormSubmission::Attributes::ParseEncodingType(const String& type) { … }
void FormSubmission::Attributes::UpdateEncodingType(const String& type) { … }
FormSubmission::SubmitMethod FormSubmission::Attributes::ParseMethodType(
const String& type) { … }
void FormSubmission::Attributes::UpdateMethodType(const String& type) { … }
String FormSubmission::Attributes::MethodString(SubmitMethod method) { … }
void FormSubmission::Attributes::CopyFrom(const Attributes& other) { … }
inline FormSubmission::FormSubmission(
SubmitMethod method,
const KURL& action,
const AtomicString& target,
const AtomicString& content_type,
Element* submitter,
scoped_refptr<EncodedFormData> data,
const Event* event,
NavigationPolicy navigation_policy,
mojom::blink::TriggeringEventInfo triggering_event_info,
ClientNavigationReason reason,
std::unique_ptr<ResourceRequest> resource_request,
Frame* target_frame,
WebFrameLoadType load_type,
LocalDOMWindow* origin_window,
const LocalFrameToken& initiator_frame_token,
bool has_rel_opener,
std::unique_ptr<SourceLocation> source_location,
mojo::PendingRemote<mojom::blink::NavigationStateKeepAliveHandle>
initiator_navigation_state_keep_alive_handle)
: … { … }
inline FormSubmission::FormSubmission(const String& result)
: … { … }
FormSubmission* FormSubmission::Create(HTMLFormElement* form,
const Attributes& attributes,
const Event* event,
HTMLFormControlElement* submit_button) { … }
void FormSubmission::Trace(Visitor* visitor) const { … }
void FormSubmission::Navigate() { … }
}