Bug 301624
| Summary: | Page icon load decisions should be queried all at once | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Adrian Perez <aperez> |
| Component: | WebKit2 | Assignee: | Adrian Perez <aperez> |
| Status: | ASSIGNED | ||
| Severity: | Normal | CC: | kkinnunen, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Bug Depends on: | 301088 | ||
| Bug Blocks: | 301086 | ||
Adrian Perez
While working on bug #301088, I noticed that in the WebProcess we know all
the icons for a page, but then querying whether they are to be loaded is done
one at a time:
void WebLocalFrameLoaderClient::getLoadDecisionForIcons(const Vector<std::pair<WebCore::LinkIcon&, uint64_t>>& icons)
{
RefPtr webPage = m_frame->page();
if (!webPage)
return;
for (auto& icon : icons)
webPage->send(Messages::WebPageProxy::GetLoadDecisionForIcon(icon.first, CallbackID::fromInteger(icon.second)));
}
It would be desirable to pass all icons at once for the following reasons:
- Currently the UIProcess cannot not know how many icons will be loaded,
and therefore cannot know when the job is done for a given page. Passing
all the candidate icons we can know for which set of loads to complete.
We would like to do this for the GTK and WPE ports (see bug #301086)
- The IconLoadingClient in the UIProcess can make a better decision about
which icons to load if it knows about all of them.
- Sending a single message should be fine, they won't typically be a huge
amount of them, and not very long.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/164079873>