| Index: third_party/WebKit/Source/core/html/HTMLFormElement.cpp
|
| diff --git a/third_party/WebKit/Source/core/html/HTMLFormElement.cpp b/third_party/WebKit/Source/core/html/HTMLFormElement.cpp
|
| index 026dcf70376d21047671b710d42602102d488f97..e799357e8948a45e90ef7e366e62f79e7837be07 100644
|
| --- a/third_party/WebKit/Source/core/html/HTMLFormElement.cpp
|
| +++ b/third_party/WebKit/Source/core/html/HTMLFormElement.cpp
|
| @@ -36,6 +36,7 @@
|
| #include "core/events/ScopedEventQueue.h"
|
| #include "core/frame/LocalDOMWindow.h"
|
| #include "core/frame/LocalFrame.h"
|
| +#include "core/frame/RemoteFrame.h"
|
| #include "core/frame/UseCounter.h"
|
| #include "core/frame/csp/ContentSecurityPolicy.h"
|
| #include "core/html/HTMLCollection.h"
|
| @@ -47,6 +48,7 @@
|
| #include "core/html/RadioNodeList.h"
|
| #include "core/html/forms/FormController.h"
|
| #include "core/inspector/ConsoleMessage.h"
|
| +#include "core/loader/FormSubmission.h"
|
| #include "core/loader/FrameLoader.h"
|
| #include "core/loader/FrameLoaderClient.h"
|
| #include "core/loader/MixedContentChecker.h"
|
| @@ -416,9 +418,12 @@ void HTMLFormElement::scheduleFormSubmission(FormSubmission* submission)
|
| if (MixedContentChecker::isMixedFormAction(document().frame(), submission->action()))
|
| UseCounter::count(document().frame(), UseCounter::MixedContentFormsSubmitted);
|
|
|
| - // FIXME: Plumb form submission for remote frames.
|
| - if (targetFrame->isLocalFrame())
|
| + if (targetFrame->isLocalFrame()) {
|
| toLocalFrame(targetFrame)->navigationScheduler().scheduleFormSubmission(&document(), submission);
|
| + } else {
|
| + FrameLoadRequest frameLoadRequest = submission->createFrameLoadRequest(&document());
|
| + toRemoteFrame(targetFrame)->navigate(frameLoadRequest);
|
| + }
|
| }
|
|
|
| void HTMLFormElement::reset()
|
|
|