Bug 164894

Summary: Add _WKIconLoadingDelegate SPI
Product: WebKit Reporter: Brady Eidson <beidson>
Component: WebKit2Assignee: Brady Eidson <beidson>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, barraclough, cdumez, commit-queue, dbates, esprehn+autocc, gyuyoung.kim, japhet, kangil.han, ossy, ryanhaddad
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
achristensen: review+
Fixed for EWS
none
Fixed for EWS/CQ none

Description Brady Eidson 2016-11-17 15:34:55 PST
Add _WKIconLoadingDelegate SPI

When installed, this will switch WebKit over to a mode that doesn't use the WebKit Icon Database at all.

Instead, WebKit will ask the embedder whether or not to load each icon it finds in the <head> for a page.
Once an icon is loaded, WebKit will give the data to the embedder instead of storing it in its own database.

This is step 1 towards getting rid of the WebKit IconDatabase altogether.
Comment 1 Brady Eidson 2016-11-17 15:35:09 PST
<rdar://problem/28662226>
Comment 2 Brady Eidson 2016-11-17 15:37:50 PST
Manual testing is supported with the changes to MiniBrowser.

Automated testing will be covered in https://bugs.webkit.org/show_bug.cgi?id=164895
Comment 3 Brady Eidson 2016-11-17 15:46:02 PST
Created attachment 295096 [details]
Patch
Comment 4 WebKit Commit Bot 2016-11-17 15:48:20 PST
Attachment 295096 [details] did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/Cocoa/IconLoadingDelegate.h:58:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/Cocoa/IconLoadingDelegate.mm:74:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/Cocoa/IconLoadingDelegate.mm:89:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/Cocoa/IconLoadingDelegate.mm:89:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Tools/MiniBrowser/mac/WK2BrowserWindowController.m:661:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/API/APIIconLoadingClient.h:42:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/APIIconLoadingClient.h:42:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/WebPageProxy.cpp:6658:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 8 in 34 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 5 Brady Eidson 2016-11-17 16:23:10 PST
https://trac.webkit.org/changeset/208865
Comment 6 Alex Christensen 2016-11-17 22:33:15 PST
https://trac.webkit.org/changeset/208879
Comment 7 Gavin Barraclough 2016-12-09 00:10:26 PST
Rolled out in r209599 due to performance regression.
Comment 8 Csaba Osztrogonác 2016-12-09 01:28:30 PST
(In reply to comment #7)
> Rolled out in r209599 due to performance regression.

It broke the Apple Mac build everywhere.
Comment 9 Csaba Osztrogonác 2016-12-09 01:57:15 PST
It seems you missed to revert Tools/MiniBrowser changes.
Comment 10 Ryan Haddad 2016-12-09 09:51:34 PST
(In reply to comment #8)
> (In reply to comment #7)
> > Rolled out in r209599 due to performance regression.
> 
> It broke the Apple Mac build everywhere.

I cleaned this up in http://trac.webkit.org/projects/webkit/changeset/209609
Comment 11 Brady Eidson 2016-12-09 15:19:33 PST
Found the one line culprit.

Uploading fixed patch for EWS/CQ
Comment 12 Brady Eidson 2016-12-09 15:20:00 PST
Created attachment 296719 [details]
Fixed for EWS
Comment 13 Brady Eidson 2016-12-09 15:55:38 PST
Created attachment 296728 [details]
Fixed for EWS/CQ
Comment 14 WebKit Commit Bot 2016-12-09 15:57:27 PST
Attachment 296728 [details] did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/Cocoa/IconLoadingDelegate.h:58:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/Cocoa/IconLoadingDelegate.mm:74:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/Cocoa/IconLoadingDelegate.mm:89:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/Cocoa/IconLoadingDelegate.mm:89:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Tools/MiniBrowser/mac/WK2BrowserWindowController.m:662:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/API/APIIconLoadingClient.h:42:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/APIIconLoadingClient.h:42:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/WebPageProxy.cpp:6696:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 8 in 32 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 15 WebKit Commit Bot 2016-12-09 17:26:23 PST
Comment on attachment 296728 [details]
Fixed for EWS/CQ

Clearing flags on attachment: 296728

Committed r209640: <http://trac.webkit.org/changeset/209640>
Comment 16 WebKit Commit Bot 2016-12-09 17:26:29 PST
All reviewed patches have been landed.  Closing bug.