Skip to content
  • weinig@apple.com's avatar
    Patch for https://bugs.webkit.org/show_bug.cgi?id=42297 · 7b77c6b9
    weinig@apple.com authored
    <rdar://problem/8187355>
    Make titles in WebBackForwardListItems work.
    
    Reviewed by Darin Adler.
    
    - Make WebBackForwardListItemMap per WebProcessProxy to allow updating
      them separate from a page. They are conceptually per process anyway.
    - Add a message to add or update a WebBackForwardListItemMap triggered
      by the WebCore::notifyHistoryItemChanged mechanism.
    
    * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
    (WebProcessProxyMessage::):
    Add AddOrUpdateBackForwardItem message.
    
    * UIProcess/WebBackForwardListItem.h:
    (WebKit::WebBackForwardListItem::setOriginalURL):
    (WebKit::WebBackForwardListItem::setURL):
    (WebKit::WebBackForwardListItem::setTitle):
    Add setters.
    
    * UIProcess/WebPageProxy.cpp:
    (WebKit::WebPageProxy::didReceiveMessage):
    BackForwardAddItem now assumes the item has already been created, so
    now just forwards the add message onto the WebBackForwardList.
    
    (WebKit::WebPageProxy::addItemToBackForwardList): Take a WebBackForwardList instead of an ID.
    (WebKit::WebPageProxy::goToItemInBackForwardList): Ditto.
    * UIProcess/WebPageProxy.h: Ditto.
    
    * UIProcess/WebProcessProxy.cpp:
    (WebKit::WebProcessProxy::webBackForwardItem):
    (WebKit::WebProcessProxy::addOrUpdateBackForwardListItem):
    (WebKit::WebProcessProxy::didReceiveMessage):
    (WebKit::WebProcessProxy::didReceiveSyncMessage):
    * UIProcess/WebProcessProxy.h:
    Have the WebProcessProxy manage the WebBackForwardListItems.
    
    * WebProcess/WebPage/WebBackForwardListProxy.cpp:
    (WebKit::updateBackForwardItem):
    (WebKit::WK2NotifyHistoryItemChanged): Use this to notify UIProcess
    of HistoryItem changes (such as the title being added).
    (WebKit::WebBackForwardListProxy::WebBackForwardListProxy):
    Register the notifyHistoryItemChanged function.
    (WebKit::WebBackForwardListProxy::addItem):
    Just send the ID as the updateBackForwardItem is already going to have
    been called by this time.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@63362 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    7b77c6b9