/** * webkit_web_back_forward_list_go_to_item: * @web_back_forward_list: a #WebKitWebBackForwardList * @history_item: the #WebKitWebHistoryItem to go to * * Go to the specified @web_history_item in the back forward list */ void webkit_web_back_forward_list_go_to_item(WebKitWebBackForwardList* webBackForwardList, WebKitWebHistoryItem* webHistoryItem) { g_return_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList)); g_return_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem)); WebCore::HistoryItem* historyItem = core(webHistoryItem); WebCore::BackForwardList* backForwardList = core(webBackForwardList); if (backForwardList->enabled() && historyItem) backForwardList->goToItem(historyItem); }
/*! Clears the history. \sa count(), items() */ void QWebHistory::clear() { //shortcut to private BackForwardList WebCore::BackForwardList* lst = d->lst; //clear visited links WebCore::Page* page = static_cast<WebCore::BackForwardListImpl*>(lst)->page(); if (page && page->groupPtr()) page->groupPtr()->removeVisitedLinks(); //if count() == 0 then just return if (!lst->entries().size()) return; RefPtr<WebCore::HistoryItem> current = lst->currentItem(); int capacity = lst->capacity(); lst->setCapacity(0); lst->setCapacity(capacity); //revert capacity lst->addItem(current.get()); //insert old current item lst->goToItem(current.get()); //and set it as current again d->page()->updateNavigationActions(); }