[Webkit-unassigned] [Bug 113583] New: [GTK] Add API for remembering visited links
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Mar 29 08:05:15 PDT 2013
https://bugs.webkit.org/show_bug.cgi?id=113583
Summary: [GTK] Add API for remembering visited links
Product: WebKit
Version: 528+ (Nightly build)
Platform: PC
OS/Version: Linux
Status: UNCONFIRMED
Severity: Normal
Priority: P3
Component: WebKit Gtk
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: scampa.giovanni at gmail.com
Currently webkitgtk apps don't remember visited links across sessions (see https://bugzilla.gnome.org/show_bug.cgi?id=685664).
New API is needed to integrate an external history db with the internal hash table of visited links.
Now, different ports already implement this in various ways (using PlatformStrategies):
- WebCore has a default impleementation in PageGroup, which is in memory only
- Qt/WebKit1 hooks into isVisitedLink() and queries its own DB, failing back to the internal hash table on miss
- Chromium overrides PageGroup handling completely
- WebKit2 uses a shared hashtable that is maintained from the WebContext in the UI process, and has a callback in WKHistoryClient to populate the table
- EFL exposes the callback into its own API
- Safari/WK2 and Qt/WK2 don't expose it, but maybe they use the C API directly
For Gtk, there are two approaches possible:
- Expose the populateVisitedLinks callback like EFL does
- Add new injected bundle API used by the VisitedLinkStrategy, that hooks to the application and then uses the shared table on miss
The second approach would be probably faster, as it reduces the IPC overhead and avoids preloading the entire history DB at startup, but in my proof-of-concept patch I chose the second one because it's simpler.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list