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.
Created attachment 74801 [details]
Comment on attachment 74801 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=74801&action=review
> + void customContextMenuItemSelected(WebPageProxy* page, const WebContextMenuItemData&);
Can omit “page” here.
> + item.setUserData([static_cast<WebUserDataWrapper*>(representedObject) userData]);
Needs a space before the *.
> + WebUserDataWrapper* wrapper = [[WebUserDataWrapper alloc] initWithUserData:items[i].userData()];
Also missing a call to [super init] in the implementation of [WebUserDataWrapper initWithUserData:].
Landed in r72707
Whoops, sorry about that John, had already prepped and typed the magic command when your feedback came through.
I followed up with r72709
http://trac.webkit.org/changeset/72707 might have broken GTK Linux 32-bit Release
The following tests are not passing: