Ewk_History_Item* ewk_history_item_new(const char* uri, const char* title) { WTF::String historyUri = WTF::String::fromUTF8(uri); WTF::String historyTitle = WTF::String::fromUTF8(title); WTF::RefPtr<WebCore::HistoryItem> core = WebCore::HistoryItem::create(historyUri, historyTitle, 0); Ewk_History_Item* item = ewk_history_item_new_from_core(core.release().leakRef()); return item; }
Ewk_History_Item* ewk_history_history_item_current_get(const Ewk_History* history) { EWK_HISTORY_CORE_GET_OR_RETURN(history, core, 0); WebCore::HistoryItem* currentItem = core->currentItem(); if (currentItem) return ewk_history_item_new_from_core(currentItem); return 0; }
static inline Eina_List* _ewk_history_item_list_get(const WebCore::HistoryItemVector& coreItems) { Eina_List* result = 0; unsigned int size; size = coreItems.size(); for (unsigned int i = 0; i < size; i++) { Ewk_History_Item* item = ewk_history_item_new_from_core(coreItems[i].get()); if (item) result = eina_list_append(result, item); } return result; }
HistoryItemChildrenVector DumpRenderTreeSupportEfl::childHistoryItems(const Ewk_History_Item* ewkHistoryItem) { WebCore::HistoryItem* historyItem = EWKPrivate::coreHistoryItem(ewkHistoryItem); HistoryItemChildrenVector kids; if (!historyItem) return kids; const WebCore::HistoryItemVector& children = historyItem->children(); const unsigned size = children.size(); for (unsigned i = 0; i < size; ++i) { Ewk_History_Item* kid = ewk_history_item_new_from_core(children[i].get()); kids.append(kid); } return kids; }
Ewk_History_Item* ewk_history_history_item_nth_get(const Ewk_History* history, int index) { EWK_HISTORY_CORE_GET_OR_RETURN(history, core, 0); return ewk_history_item_new_from_core(core->itemAtIndex(index)); }
Ewk_History_Item* ewk_history_history_item_forward_get(const Ewk_History* history) { EWK_HISTORY_CORE_GET_OR_RETURN(history, core, 0); return ewk_history_item_new_from_core(core->forwardItem()); }