Bug 50042

Summary: WK2 Context Menu Items need a user data object and a client callback for selection
Product: WebKit Reporter: Brady Eidson <beidson>
Component: WebKit2Assignee: Brady Eidson <beidson>
Severity: Normal CC: abarth, eric, sullivan, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Description Flags
Patch v1 mitz: review+, beidson: commit-queue-

Description Brady Eidson 2010-11-24 14:53:58 PST
WK2 Context Menu Items need a user data object and a client callback for selection.

For now I think the user data object is only important for "application custom" context menu items.  If we later decide it's important to attach the user data objects to the WebCore items in the WebProcess, that can be done but it requires a large amount of platform-specific goop that we'll have to invent if that's needed.
Comment 1 Brady Eidson 2010-11-24 15:15:43 PST
Created attachment 74801 [details]
Patch v1
Comment 2 mitz 2010-11-24 16:50:48 PST
Comment on attachment 74801 [details]
Patch v1

View in context: https://bugs.webkit.org/attachment.cgi?id=74801&action=review

> WebKit2/UIProcess/WebPageContextMenuClient.h:42
> +    void customContextMenuItemSelected(WebPageProxy* page, const WebContextMenuItemData&);

Can omit “page” here.

> WebKit2/UIProcess/mac/WebContextMenuProxyMac.mm:92
> +        item.setUserData([static_cast<WebUserDataWrapper*>(representedObject) userData]);

Needs a space before the *.

> WebKit2/UIProcess/mac/WebContextMenuProxyMac.mm:144
> +                WebUserDataWrapper* wrapper = [[WebUserDataWrapper alloc] initWithUserData:items[i].userData()];

Comment 3 John Sullivan 2010-11-24 16:53:11 PST
Also missing a call to [super init] in the implementation of [WebUserDataWrapper initWithUserData:].
Comment 4 Brady Eidson 2010-11-24 16:53:31 PST
Landed in r72707
Comment 5 Brady Eidson 2010-11-24 17:09:46 PST
Whoops, sorry about that John, had already prepped and typed the magic command when your feedback came through.

I followed up with r72709
Comment 6 WebKit Review Bot 2010-11-24 17:27:47 PST
http://trac.webkit.org/changeset/72707 might have broken GTK Linux 32-bit Release
The following tests are not passing: