Bug 143959 - Add a bool parameter to decidePolicyForNavigationAction and decidePolicyForNewWindowAction in WKPagePolicyClient to track whether it's user initiated
Summary: Add a bool parameter to decidePolicyForNavigationAction and decidePolicyForNe...
Status: RESOLVED WONTFIX
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Ada Chan
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-04-20 12:32 PDT by Ada Chan
Modified: 2017-07-28 20:28 PDT (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ada Chan 2015-04-20 12:32:58 PDT
These are the new definitions of the decidePolicyForNavigationAction and decidePolicyForNewWindowAction callbacks:

typedef void (*WKPageDecidePolicyForNavigationActionCallback)(WKPageRef page, WKFrameRef frame, WKFrameNavigationType navigationType, WKEventModifiers modifiers, WKEventMouseButton mouseButton, bool isUserInitiated, WKFrameRef originatingFrame, WKURLRequestRef request, WKFramePolicyListenerRef listener, WKTypeRef userData, const void* clientInfo);
typedef void (*WKPageDecidePolicyForNewWindowActionCallback)(WKPageRef page, WKFrameRef frame, WKFrameNavigationType navigationType, WKEventModifiers modifiers, WKEventMouseButton mouseButton, bool isUserInitiated, WKURLRequestRef request, WKStringRef frameName, WKFramePolicyListenerRef listener, WKTypeRef userData, const void* clientInfo);

This is needed for <rdar://problem/20139052>
Comment 1 mitz 2017-07-28 20:28:15 PDT
(In reply to Ada Chan from comment #0)
> These are the new definitions of the decidePolicyForNavigationAction and
> decidePolicyForNewWindowAction callbacks:
> 
> typedef void (*WKPageDecidePolicyForNavigationActionCallback)(WKPageRef
> page, WKFrameRef frame, WKFrameNavigationType navigationType,
> WKEventModifiers modifiers, WKEventMouseButton mouseButton, bool
> isUserInitiated, WKFrameRef originatingFrame, WKURLRequestRef request,
> WKFramePolicyListenerRef listener, WKTypeRef userData, const void*
> clientInfo);
> typedef void (*WKPageDecidePolicyForNewWindowActionCallback)(WKPageRef page,
> WKFrameRef frame, WKFrameNavigationType navigationType, WKEventModifiers
> modifiers, WKEventMouseButton mouseButton, bool isUserInitiated,
> WKURLRequestRef request, WKStringRef frameName, WKFramePolicyListenerRef
> listener, WKTypeRef userData, const void* clientInfo);
> 
> This is needed for <rdar://problem/20139052>

I see that that has been resolved without relying on the new callback, so I think we are not going to make this change.