Bug 82441

Summary: [GTK] Initial cookies API for WebKit2 GTK+ API
Product: WebKit Reporter: Carlos Garcia Campos <cgarcia@igalia.com>
Component: WebKit2Assignee: Nobody <webkit-unassigned@lists.webkit.org>
Status: RESOLVED FIXED    
Severity: Normal CC: gns@gnome.org, mrobinson@webkit.org, svillar@igalia.com, webkit.review.bot@gmail.com
Priority: P2 Keywords: Gtk
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Linux   
Bug Depends on:    
Bug Blocks: 82598    
Attachments:
Description Flags
Patch gns: review+

Description From 2012-03-28 02:44:26 PST
Add an initial WebKitCookieManager object to be able to set the acceptance policy, get domains and delete cookies.
------- Comment #1 From 2012-03-28 02:51:27 PST -------
Created an attachment (id=134247) [details]
Patch
------- Comment #2 From 2012-03-28 02:54:18 PST -------
Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API
------- Comment #3 From 2012-04-11 05:15:13 PST -------
(From update of attachment 134247 [details])
View in context: https://bugs.webkit.org/attachment.cgi?id=134247&action=review

> Source/WebKit2/UIProcess/API/gtk/WebKitCookieManager.cpp:210
> +    WKCookieManagerDeleteCookiesForHostname(manager->priv->wkCookieManager.get(), wkDomain.get());

Are the delete calls synchronous, or do we just not care about the result in this case? Also what about deleting a single cookie? That's something Ephy does today, something we want to keep supporting?
------- Comment #4 From 2012-04-11 06:24:09 PST -------
(In reply to comment #3)
> (From update of attachment 134247 [details] [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=134247&action=review

Thanks for reviewing!

> > Source/WebKit2/UIProcess/API/gtk/WebKitCookieManager.cpp:210
> > +    WKCookieManagerDeleteCookiesForHostname(manager->priv->wkCookieManager.get(), wkDomain.get());
> 
> Are the delete calls synchronous, or do we just not care about the result in this case?

It's async, but the C API doesn't provide any result nor callback to be emitted when the operation finishes.

> Also what about deleting a single cookie?

Not supported by the C API.

> That's something Ephy does today, something we want to keep supporting?

As I commented in the mailing list when I proposed this API, it's not a common operation, people usually remove the cookies for a domain rather than a single cookie. However, since bugs #82081 and #82082 landed already, it's now possible to see the details of all cookies using the inspector, as well as deleting a single cookie. So, we could leave that as an advanced feature available through the inspector. Or we can add the API if you think it's really important. In any case, I think it would be batter to discuss about it in the mailing list, see this thread:

https://lists.webkit.org/pipermail/webkit-gtk/2012-March/001007.html
------- Comment #5 From 2012-04-11 09:15:05 PST -------
Committed r113870: <http://trac.webkit.org/changeset/113870>
------- Comment #6 From 2012-04-16 08:32:39 PST -------
I think using the inspector for these advanced features is a great idea, yeah =)