Commit 249af91f authored by John Z Wu's avatar John Z Wu Committed by Commit Bot

Add userInitiated to CWVAutofillControllerDelegate methods

This will help with more accurate logging in //ios/web_view.

Bug: 1031423
Change-Id: I2a87917bb9be50c8e802a33dff1e8de33d818e12
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1954457
Commit-Queue: John Wu <jzw@chromium.org>
Reviewed-by: default avatarHiroshi Ichikawa <ichikawa@chromium.org>
Cr-Commit-Position: refs/heads/master@{#722605}
parent 69ded10d
......@@ -536,40 +536,47 @@ showUnmaskPromptForCard:(const autofill::CreditCard&)creditCard
NSString* nsFieldType = base::SysUTF8ToNSString(params.field_type);
NSString* nsFrameID = base::SysUTF8ToNSString(GetWebFrameId(frame));
NSString* nsValue = base::SysUTF8ToNSString(params.value);
BOOL userInitiated = params.has_user_gesture;
if (params.type == "focus") {
_lastFocusFormActivityWebFrameID = nsFrameID;
if ([_delegate respondsToSelector:@selector
(autofillController:didFocusOnFieldWithIdentifier:fieldType
:formName:frameID:value:)]) {
(autofillController:
didFocusOnFieldWithIdentifier:fieldType:formName:frameID
:value:userInitiated:)]) {
[_delegate autofillController:self
didFocusOnFieldWithIdentifier:nsFieldIdentifier
fieldType:nsFieldType
formName:nsFormName
frameID:nsFrameID
value:nsValue];
value:nsValue
userInitiated:userInitiated];
}
} else if (params.type == "input") {
_lastFocusFormActivityWebFrameID = nsFrameID;
if ([_delegate respondsToSelector:@selector
(autofillController:didInputInFieldWithIdentifier:fieldType
:formName:frameID:value:)]) {
(autofillController:
didInputInFieldWithIdentifier:fieldType:formName:frameID
:value:userInitiated:)]) {
[_delegate autofillController:self
didInputInFieldWithIdentifier:nsFieldIdentifier
fieldType:nsFieldType
formName:nsFormName
frameID:nsFrameID
value:nsValue];
value:nsValue
userInitiated:userInitiated];
}
} else if (params.type == "blur") {
if ([_delegate respondsToSelector:@selector
(autofillController:didBlurOnFieldWithIdentifier:fieldType
:formName:frameID:value:)]) {
(autofillController:
didBlurOnFieldWithIdentifier:fieldType:formName:frameID
:value:userInitiated:)]) {
[_delegate autofillController:self
didBlurOnFieldWithIdentifier:nsFieldIdentifier
fieldType:nsFieldType
formName:nsFormName
frameID:nsFrameID
value:nsValue];
value:nsValue
userInitiated:userInitiated];
}
}
}
......@@ -581,12 +588,12 @@ showUnmaskPromptForCard:(const autofill::CreditCard&)creditCard
formInMainFrame:(BOOL)isMainFrame
inFrame:(web::WebFrame*)frame {
if ([_delegate respondsToSelector:@selector
(autofillController:didSubmitFormWithName:userInitiated
:isMainFrame:)]) {
(autofillController:
didSubmitFormWithName:frameID:userInitiated:)]) {
[_delegate autofillController:self
didSubmitFormWithName:base::SysUTF8ToNSString(formName)
userInitiated:userInitiated
isMainFrame:isMainFrame];
frameID:base::SysUTF8ToNSString(frame->GetFrameId())
userInitiated:userInitiated];
}
}
......
......@@ -231,13 +231,15 @@ TEST_F(CWVAutofillControllerTest, FocusCallback) {
fieldType:@""
formName:kTestFormName
frameID:kTestFrameId
value:kTestFieldValue];
value:kTestFieldValue
userInitiated:YES];
autofill::FormActivityParams params;
params.form_name = base::SysNSStringToUTF8(kTestFormName);
params.field_identifier = base::SysNSStringToUTF8(kTestFieldIdentifier);
params.value = base::SysNSStringToUTF8(kTestFieldValue);
params.frame_id = base::SysNSStringToUTF8(kTestFrameId);
params.has_user_gesture = true;
params.type = "focus";
web::FakeWebFrame frame(base::SysNSStringToUTF8(kTestFrameId), true,
GURL::EmptyGURL());
......@@ -260,7 +262,8 @@ TEST_F(CWVAutofillControllerTest, InputCallback) {
fieldType:@""
formName:kTestFormName
frameID:kTestFrameId
value:kTestFieldValue];
value:kTestFieldValue
userInitiated:YES];
autofill::FormActivityParams params;
params.form_name = base::SysNSStringToUTF8(kTestFormName);
......@@ -268,6 +271,7 @@ TEST_F(CWVAutofillControllerTest, InputCallback) {
params.value = base::SysNSStringToUTF8(kTestFieldValue);
params.frame_id = base::SysNSStringToUTF8(kTestFrameId);
params.type = "input";
params.has_user_gesture = true;
web::FakeWebFrame frame(base::SysNSStringToUTF8(kTestFrameId), true,
GURL::EmptyGURL());
test_form_activity_tab_helper_->FormActivityRegistered(&frame, params);
......@@ -288,7 +292,8 @@ TEST_F(CWVAutofillControllerTest, BlurCallback) {
fieldType:@""
formName:kTestFormName
frameID:kTestFrameId
value:kTestFieldValue];
value:kTestFieldValue
userInitiated:YES];
autofill::FormActivityParams params;
params.form_name = base::SysNSStringToUTF8(kTestFormName);
......@@ -296,6 +301,7 @@ TEST_F(CWVAutofillControllerTest, BlurCallback) {
params.value = base::SysNSStringToUTF8(kTestFieldValue);
params.frame_id = base::SysNSStringToUTF8(kTestFrameId);
params.type = "blur";
params.has_user_gesture = true;
web::FakeWebFrame frame(base::SysNSStringToUTF8(kTestFrameId), true,
GURL::EmptyGURL());
test_form_activity_tab_helper_->FormActivityRegistered(&frame, params);
......@@ -314,8 +320,8 @@ TEST_F(CWVAutofillControllerTest, SubmitCallback) {
@autoreleasepool {
[[delegate expect] autofillController:autofill_controller_
didSubmitFormWithName:kTestFormName
userInitiated:YES
isMainFrame:YES];
frameID:kTestFrameId
userInitiated:YES];
web::FakeWebFrame frame(base::SysNSStringToUTF8(kTestFrameId), true,
GURL::EmptyGURL());
test_form_activity_tab_helper_->DocumentSubmitted(
......@@ -326,8 +332,8 @@ TEST_F(CWVAutofillControllerTest, SubmitCallback) {
[[delegate expect] autofillController:autofill_controller_
didSubmitFormWithName:kTestFormName
userInitiated:NO
isMainFrame:YES];
frameID:kTestFrameId
userInitiated:NO];
test_form_activity_tab_helper_->DocumentSubmitted(
/*sender_frame*/ &frame, base::SysNSStringToUTF8(kTestFormName),
......
......@@ -42,35 +42,42 @@ typedef NS_ENUM(NSInteger, CWVPasswordUserDecision) {
@optional
// Called when a form field element receives a "focus" event.
// |userInitiated| is YES if field was focused as a result of user interaction.
- (void)autofillController:(CWVAutofillController*)autofillController
didFocusOnFieldWithIdentifier:(NSString*)fieldIdentifier
fieldType:(NSString*)fieldType
formName:(NSString*)formName
frameID:(NSString*)frameID
value:(NSString*)value;
value:(NSString*)value
userInitiated:(BOOL)userInitiated;
// Called when a form field element receives an "input" event.
// |userInitiated| is YES if field received input as a result of user
// interaction.
- (void)autofillController:(CWVAutofillController*)autofillController
didInputInFieldWithIdentifier:(NSString*)fieldIdentifier
fieldType:(NSString*)fieldType
formName:(NSString*)formName
frameID:(NSString*)frameID
value:(NSString*)value;
value:(NSString*)value
userInitiated:(BOOL)userInitiated;
// Called when a form field element receives a "blur" (un-focused) event.
// |userInitiated| is YES if field was blurred as a result of user interaction.
- (void)autofillController:(CWVAutofillController*)autofillController
didBlurOnFieldWithIdentifier:(NSString*)fieldIdentifier
fieldType:(NSString*)fieldType
formName:(NSString*)formName
frameID:(NSString*)frameID
value:(NSString*)value;
value:(NSString*)value
userInitiated:(BOOL)userInitiated;
// Called when a form was submitted. |userInitiated| is YES if form is submitted
// as a result of user interaction.
// Called when a form was submitted.
// |userInitiated| is YES if form was submitted as a result of user interaction.
- (void)autofillController:(CWVAutofillController*)autofillController
didSubmitFormWithName:(NSString*)formName
userInitiated:(BOOL)userInitiated
isMainFrame:(BOOL)isMainFrame;
frameID:(NSString*)frameID
userInitiated:(BOOL)userInitiated;
// Called when |forms| are found in a frame with |frameID|.
// Will be called after initial load and after any form mutations.
......
......@@ -45,7 +45,8 @@
fieldType:(NSString*)fieldType
formName:(NSString*)formName
frameID:(NSString*)frameID
value:(NSString*)value {
value:(NSString*)value
userInitiated:(BOOL)userInitiated {
_autofillController = autofillController;
__weak ShellAutofillDelegate* weakSelf = self;
......@@ -89,7 +90,9 @@
didInputInFieldWithIdentifier:(NSString*)fieldIdentifier
fieldType:(NSString*)fieldType
formName:(NSString*)formName
value:(NSString*)value {
frameID:(NSString*)frameID
value:(NSString*)value
userInitiated:(BOOL)userInitiated {
// Not implemented.
}
......@@ -97,14 +100,16 @@
didBlurOnFieldWithIdentifier:(NSString*)fieldIdentifier
fieldType:(NSString*)fieldType
formName:(NSString*)formName
value:(NSString*)value {
frameID:(NSString*)frameID
value:(NSString*)value
userInitiated:(BOOL)userInitiated {
// Not implemented.
}
- (void)autofillController:(CWVAutofillController*)autofillController
didSubmitFormWithName:(NSString*)formName
userInitiated:(BOOL)userInitiated
isMainFrame:(BOOL)isMainFrame {
frameID:(NSString*)frameID
userInitiated:(BOOL)userInitiated {
// Not implemented.
}
......
......@@ -194,7 +194,8 @@ TEST_F(WebViewAutofillTest, TestDelegateCallbacks) {
fieldType:kTestFieldType
formName:kTestFormName
frameID:[OCMArg any]
value:kTestAddressFieldValue];
value:kTestAddressFieldValue
userInitiated:YES];
NSString* focus_script =
[NSString stringWithFormat:@"document.getElementById('%@').focus();",
kTestAddressFieldID];
......@@ -208,7 +209,8 @@ TEST_F(WebViewAutofillTest, TestDelegateCallbacks) {
fieldType:kTestFieldType
formName:kTestFormName
frameID:[OCMArg any]
value:kTestAddressFieldValue];
value:kTestAddressFieldValue
userInitiated:NO];
NSString* blur_script =
[NSString stringWithFormat:
@"var event = new Event('blur', {bubbles:true});"
......@@ -224,7 +226,8 @@ TEST_F(WebViewAutofillTest, TestDelegateCallbacks) {
fieldType:kTestFieldType
formName:kTestFormName
frameID:[OCMArg any]
value:kTestAddressFieldValue];
value:kTestAddressFieldValue
userInitiated:NO];
// The 'input' event listener defined in form.js is only called during the
// bubbling phase.
NSString* input_script =
......@@ -239,8 +242,8 @@ TEST_F(WebViewAutofillTest, TestDelegateCallbacks) {
[[delegate expect] autofillController:autofill_controller_
didSubmitFormWithName:kTestFormName
userInitiated:NO
isMainFrame:YES];
frameID:[OCMArg any]
userInitiated:NO];
// The 'submit' event listener defined in form.js is only called during the
// bubbling phase.
NSString* submit_script =
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment