Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(226)

Side by Side Diff: ios/web/web_state/ui/crw_web_controller.mm

Issue 2763173002: Form submission with blank target is broken. (Closed)
Patch Set: Revert userClickedRecently change. Remove registerLoadRequest call. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #import "ios/web/web_state/ui/crw_web_controller.h" 5 #import "ios/web/web_state/ui/crw_web_controller.h"
6 6
7 #import <WebKit/WebKit.h> 7 #import <WebKit/WebKit.h>
8 8
9 #import <objc/runtime.h> 9 #import <objc/runtime.h>
10 #include <stddef.h> 10 #include <stddef.h>
(...skipping 2540 matching lines...) Expand 10 before | Expand all | Expand 10 after
2551 return YES; 2551 return YES;
2552 } 2552 }
2553 2553
2554 - (BOOL)handleDocumentSubmitMessage:(base::DictionaryValue*)message 2554 - (BOOL)handleDocumentSubmitMessage:(base::DictionaryValue*)message
2555 context:(NSDictionary*)context { 2555 context:(NSDictionary*)context {
2556 std::string href; 2556 std::string href;
2557 if (!message->GetString("href", &href)) { 2557 if (!message->GetString("href", &href)) {
2558 DLOG(WARNING) << "JS message parameter not found: href"; 2558 DLOG(WARNING) << "JS message parameter not found: href";
2559 return NO; 2559 return NO;
2560 } 2560 }
2561 const GURL targetURL(href);
2562 const GURL currentURL([self currentURL]);
2563 bool targetsFrame = false;
2564 message->GetBoolean("targetsFrame", &targetsFrame);
Eugene But (OOO till 7-30) 2017/03/28 18:47:42 Do we also need to remove targetsFrame from JavaSc
michaeldo 2017/03/29 22:53:37 Good call, I removed it and updated description. P
2565 if (!targetsFrame && web::UrlHasWebScheme(targetURL)) {
2566 // The referrer is not known yet, and will be updated later.
2567 const web::Referrer emptyReferrer;
2568 [self registerLoadRequest:targetURL
2569 referrer:emptyReferrer
2570 transition:ui::PAGE_TRANSITION_FORM_SUBMIT];
2571 }
2572 std::string formName; 2561 std::string formName;
2573 message->GetString("formName", &formName); 2562 message->GetString("formName", &formName);
2574 base::scoped_nsobject<NSSet> observers([_observers copy]); 2563 base::scoped_nsobject<NSSet> observers([_observers copy]);
2575 // We decide the form is user-submitted if the user has interacted with 2564 // We decide the form is user-submitted if the user has interacted with
2576 // the main page (using logic from the popup blocker), or if the keyboard 2565 // the main page (using logic from the popup blocker), or if the keyboard
2577 // is visible. 2566 // is visible.
2578 BOOL submittedByUser = [context[kUserIsInteractingKey] boolValue] || 2567 BOOL submittedByUser = [context[kUserIsInteractingKey] boolValue] ||
2579 [_webViewProxy keyboardAccessory]; 2568 [_webViewProxy keyboardAccessory];
2580 _webStateImpl->OnDocumentSubmitted(formName, submittedByUser); 2569 _webStateImpl->OnDocumentSubmitted(formName, submittedByUser);
2581 return YES; 2570 return YES;
(...skipping 2516 matching lines...) Expand 10 before | Expand all | Expand 10 after
5098 - (void)simulateLoadRequestWithURL:(const GURL&)URL { 5087 - (void)simulateLoadRequestWithURL:(const GURL&)URL {
5099 _lastRegisteredRequestURL = URL; 5088 _lastRegisteredRequestURL = URL;
5100 _loadPhase = web::LOAD_REQUESTED; 5089 _loadPhase = web::LOAD_REQUESTED;
5101 } 5090 }
5102 5091
5103 - (NSString*)referrerFromNavigationAction:(WKNavigationAction*)action { 5092 - (NSString*)referrerFromNavigationAction:(WKNavigationAction*)action {
5104 return [action.request valueForHTTPHeaderField:kReferrerHeaderName]; 5093 return [action.request valueForHTTPHeaderField:kReferrerHeaderName];
5105 } 5094 }
5106 5095
5107 @end 5096 @end
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698