WebKit2GTK+ Reference Manual: WebKitBackForwardList

## WebKitBackForwardList WebKitBackForwardList — List of visited pages |

## Synopsis

    struct              WebKitBackForwardList;
    guint               webkit_back_forward_list_get_length (WebKitBackForwardList *back_forward_list);
    WebKitBackForwardListItem * webkit_back_forward_list_get_current_item
                                                            (WebKitBackForwardList *back_forward_list);
    WebKitBackForwardListItem * webkit_back_forward_list_get_back_item
                                                            (WebKitBackForwardList *back_forward_list);
    WebKitBackForwardListItem * webkit_back_forward_list_get_forward_item
                                                            (WebKitBackForwardList *back_forward_list);
    WebKitBackForwardListItem * webkit_back_forward_list_get_nth_item
                                                            (WebKitBackForwardList *back_forward_list,
                                                             gint index);
    GList *             webkit_back_forward_list_get_back_list
                                                            (WebKitBackForwardList *back_forward_list);
    GList *             webkit_back_forward_list_get_back_list_with_limit
                                                            (WebKitBackForwardList *back_forward_list,
                                                             guint limit);
    GList *             webkit_back_forward_list_get_forward_list
                                                            (WebKitBackForwardList *back_forward_list);
    GList *             webkit_back_forward_list_get_forward_list_with_limit
                                                            (WebKitBackForwardList *back_forward_list,
                                                             guint limit);

## Object Hierarchy

      GObject
       +----WebKitBackForwardList

## Signals

      "changed"                                        : Run Last

## Description

WebKitBackForwardList maintains a list of visited pages used to navigate to recent pages. Items are inserted in the list in the order they are visited.

WebKitBackForwardList also maintains the notion of the current item (which is always at index 0), the preceding item (which is at index -1), and the following item (which is at index 1). Methods `webkit_web_view_go_back()` and `webkit_web_view_go_forward()` move the current item backward or forward by one. Method `webkit_web_view_go_to_back_forward_list_item()` sets the current item to the specified item. All other methods returning WebKitBackForwardListItems do not change the value of the current item, they just return the requested item or items.

## Details

### struct WebKitBackForwardList

    struct WebKitBackForwardList;

### webkit_back_forward_list_get_length ()

    guint               webkit_back_forward_list_get_length (WebKitBackForwardList *back_forward_list);

`back_forward_list` : | a WebKitBackForwardList
Returns : | the length of `back_forward_list`.

### webkit_back_forward_list_get_current_item ()

    WebKitBackForwardListItem * webkit_back_forward_list_get_current_item
                                                            (WebKitBackForwardList *back_forward_list);

Returns the current item in `back_forward_list`.

`back_forward_list` : | a WebKitBackForwardList
Returns : | a WebKitBackForwardListItem or `NULL` if `back_forward_list` is empty. [transfer none]

### webkit_back_forward_list_get_back_item ()

    WebKitBackForwardListItem * webkit_back_forward_list_get_back_item
                                                            (WebKitBackForwardList *back_forward_list);

Returns the item that precedes the current item.

`back_forward_list` : | a WebKitBackForwardList
Returns : | the WebKitBackForwardListItem preceding the current item or `NULL`. [transfer none]

### webkit_back_forward_list_get_forward_item ()

    WebKitBackForwardListItem * webkit_back_forward_list_get_forward_item
                                                            (WebKitBackForwardList *back_forward_list);

Returns the item that follows the current item.

`back_forward_list` : | a WebKitBackForwardList
Returns : | the WebKitBackForwardListItem following the current item or `NULL`. [transfer none]

### webkit_back_forward_list_get_nth_item ()

    WebKitBackForwardListItem * webkit_back_forward_list_get_nth_item
                                                            (WebKitBackForwardList *back_forward_list,
                                                             gint index);

Returns the item at a given index relative to the current item.

`back_forward_list` : | a WebKitBackForwardList
`index` : | the index of the item
Returns : | the WebKitBackForwardListItem located at the specified index relative to the current item. [transfer none]

### webkit_back_forward_list_get_back_list ()

    GList *             webkit_back_forward_list_get_back_list
                                                            (WebKitBackForwardList *back_forward_list);

`back_forward_list` : | a WebKitBackForwardList
Returns : | a GList of items preceding the current item. [element-type WebKit2.BackForwardListItem][transfer container]

### webkit_back_forward_list_get_back_list_with_limit ()

    GList *             webkit_back_forward_list_get_back_list_with_limit
                                                            (WebKitBackForwardList *back_forward_list,
                                                             guint limit);

`back_forward_list` : | a WebKitBackForwardList
`limit` : | the number of items to retrieve
Returns : | a GList of items preceding the current item limited by `limit`. [element-type WebKit2.BackForwardListItem][transfer container]

### webkit_back_forward_list_get_forward_list ()

    GList *             webkit_back_forward_list_get_forward_list
                                                            (WebKitBackForwardList *back_forward_list);

`back_forward_list` : | a WebKitBackForwardList
Returns : | a GList of items following the current item. [element-type WebKit2.BackForwardListItem][transfer container]

### webkit_back_forward_list_get_forward_list_with_limit ()

    GList *             webkit_back_forward_list_get_forward_list_with_limit
                                                            (WebKitBackForwardList *back_forward_list,
                                                             guint limit);

`back_forward_list` : | a WebKitBackForwardList
`limit` : | the number of items to retrieve
Returns : | a GList of items following the current item limited by `limit`. [element-type WebKit2.BackForwardListItem][transfer container]

## Signal Details

### The `"changed"` signal

    void                user_function                      (WebKitBackForwardList     *back_forward_list,
                                                            WebKitBackForwardListItem *item_added,
                                                            gpointer                   items_removed,
                                                            gpointer                   user_data)              : Run Last

This signal is emitted when `back_forward_list` changes. This happens when the current item is updated, a new item is added or one or more items are removed. Note that both `item_added` and `items_removed` can `NULL` when only the current item is updated. Items are only removed when the list is cleared or the maximum items limit is reached.

`back_forward_list` : | the WebKitBackForwardList on which the signal was emitted
`item_added` : | the WebKitBackForwardListItem added or `NULL`. [allow-none]
`items_removed` : | a GList of WebKitBackForwardListItems
`user_data` : | user data set when the signal handler was connected.

## See Also

WebKitWebView, WebKitBackForwardListItem