Changeset 157776 in webkit


Ignore:
Timestamp:
Oct 21, 2013 10:16:38 PM (11 years ago)
Author:
mitz@apple.com
Message:

[Cocoa] Add load delegate method for didChangeBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=123136

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKBrowsingContextController.mm:

(didChangeBackForwardList): Added. Calls new delegate method.
(setUpPageLoaderClient): Hook up new client function.

  • UIProcess/API/mac/WKBrowsingContextLoadDelegate.h: Declare new delegate method.
Location:
trunk/Source/WebKit2
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r157770 r157776  
     12013-10-21  Dan Bernstein  <mitz@apple.com>
     2
     3        [Cocoa] Add load delegate method for didChangeBackForwardList
     4        https://bugs.webkit.org/show_bug.cgi?id=123136
     5
     6        Reviewed by Anders Carlsson.
     7
     8        * UIProcess/API/mac/WKBrowsingContextController.mm:
     9        (didChangeBackForwardList): Added. Calls new delegate method.
     10        (setUpPageLoaderClient):  Hook up new client function.
     11        * UIProcess/API/mac/WKBrowsingContextLoadDelegate.h: Declare new delegate method.
     12
    1132013-10-21  Mark Rowe  <mrowe@apple.com>
    214
  • trunk/Source/WebKit2/UIProcess/API/mac/WKBrowsingContextController.mm

    r157754 r157776  
    3131#import "ObjCObjectGraph.h"
    3232#import "WKBackForwardListInternal.h"
     33#import "WKBackForwardListItemInternal.h"
    3334#import "WKErrorCF.h"
    3435#import "WKFrame.h"
     36#import "WKNSArray.h"
    3537#import "WKPagePrivate.h"
    3638#import "WKRetainPtr.h"
     
    489491}
    490492
     493static void didChangeBackForwardList(WKPageRef page, WKBackForwardListItemRef addedItem, WKArrayRef removedItems, const void *clientInfo)
     494{
     495    WKBrowsingContextController *browsingContext = (WKBrowsingContextController *)clientInfo;
     496    if (![browsingContext.loadDelegate respondsToSelector:@selector(browsingContextControllerDidChangedBackForwardList:addedItem:removedItems:)])
     497        return;
     498
     499    WKBackForwardListItem *added = addedItem ? [[WKBackForwardListItem alloc] _initWithItem:*toImpl(addedItem)] : nil;
     500    NSArray *removed = removedItems ? [[WKNSArray alloc] web_initWithImmutableArray:*toImpl(removedItems)] : nil;
     501    [browsingContext.loadDelegate browsingContextControllerDidChangedBackForwardList:browsingContext addedItem:added removedItems:removed];
     502    [added release];
     503    [removed release];
     504}
     505
    491506static void setUpPageLoaderClient(WKBrowsingContextController *browsingContext, WKPageRef pageRef)
    492507{
     
    507522    loaderClient.didFinishProgress = didFinishProgress;
    508523
     524    loaderClient.didChangeBackForwardList = didChangeBackForwardList;
     525
    509526    WKPageSetPageLoaderClient(pageRef, &loaderClient);
    510527}
  • trunk/Source/WebKit2/UIProcess/API/mac/WKBrowsingContextLoadDelegate.h

    r157701 r157776  
    5353- (void)browsingContextControllerDidFinishProgress:(WKBrowsingContextController *)sender;
    5454
     55- (void)browsingContextControllerDidChangedBackForwardList:(WKBrowsingContextController *)sender addedItem:(WKBackForwardListItem *)addedItem removedItems:(NSArray *)removedItems;
     56
    5557@end
Note: See TracChangeset for help on using the changeset viewer.