summaryrefslogtreecommitdiff
path: root/Source/WebKit2/Shared/WebBackForwardListItem.h
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
commit1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch)
tree46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebKit2/Shared/WebBackForwardListItem.h
parent32761a6cee1d0dee366b885b7b9c777e67885688 (diff)
downloadWebKitGtk-tarball-master.tar.gz
Diffstat (limited to 'Source/WebKit2/Shared/WebBackForwardListItem.h')
-rw-r--r--Source/WebKit2/Shared/WebBackForwardListItem.h58
1 files changed, 26 insertions, 32 deletions
diff --git a/Source/WebKit2/Shared/WebBackForwardListItem.h b/Source/WebKit2/Shared/WebBackForwardListItem.h
index 5abc95b54..df4573e6c 100644
--- a/Source/WebKit2/Shared/WebBackForwardListItem.h
+++ b/Source/WebKit2/Shared/WebBackForwardListItem.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010, 2011 Apple Inc. All rights reserved.
+ * Copyright (C) 2010-2011, 2016 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -27,56 +27,50 @@
#define WebBackForwardListItem_h
#include "APIObject.h"
+#include "SessionState.h"
#include <wtf/PassRefPtr.h>
#include <wtf/text/WTFString.h>
+namespace API {
+class Data;
+}
+
namespace IPC {
- class ArgumentDecoder;
- class ArgumentEncoder;
+class Decoder;
+class Encoder;
}
namespace WebKit {
class WebBackForwardListItem : public API::ObjectImpl<API::Object::Type::BackForwardListItem> {
public:
- static PassRefPtr<WebBackForwardListItem> create(const String& originalURL, const String& url, const String& title, const uint8_t* backForwardData, size_t backForwardDataSize, uint64_t itemID)
- {
- return adoptRef(new WebBackForwardListItem(originalURL, url, title, backForwardData, backForwardDataSize, itemID));
- }
-
+ static Ref<WebBackForwardListItem> create(BackForwardListItemState&&, uint64_t pageID);
virtual ~WebBackForwardListItem();
- uint64_t itemID() const { return m_itemID; }
+ uint64_t itemID() const { return m_itemState.identifier; }
+ const BackForwardListItemState& itemState() { return m_itemState; }
+ uint64_t pageID() const { return m_pageID; }
- void setOriginalURL(const String& originalURL) { m_originalURL = originalURL; }
- const String& originalURL() const { return m_originalURL; }
+ void setPageState(PageState pageState) { m_itemState.pageState = WTFMove(pageState); }
- void setURL(const String& url) { m_url = url; }
- const String& url() const { return m_url; }
+ const String& originalURL() const { return m_itemState.pageState.mainFrameState.originalURLString; }
+ const String& url() const { return m_itemState.pageState.mainFrameState.urlString; }
+ const String& title() const { return m_itemState.pageState.title; }
- void setTitle(const String& title) { m_title = title; }
- const String& title() const { return m_title; }
-
- void setBackForwardData(const uint8_t* buffer, size_t size);
- const Vector<uint8_t>& backForwardData() const { return m_backForwardData; }
+ bool itemIsInSameDocument(const WebBackForwardListItem&) const;
- void setSnapshotUUID(const String& uuid) { m_snapshotUUID = uuid; }
- const String& snapshotUUID() const { return m_snapshotUUID; }
+#if PLATFORM(COCOA)
+ ViewSnapshot* snapshot() const { return m_itemState.snapshot.get(); }
+ void setSnapshot(PassRefPtr<ViewSnapshot> snapshot) { m_itemState.snapshot = snapshot; }
+#endif
- void encode(IPC::ArgumentEncoder&) const;
- static PassRefPtr<WebBackForwardListItem> decode(IPC::ArgumentDecoder&);
-
- static uint64_t highedUsedItemID();
+ static uint64_t highestUsedItemID();
private:
- WebBackForwardListItem(const String& originalURL, const String& url, const String& title, const uint8_t* backForwardData, size_t backForwardDataSize, uint64_t itemID);
-
- String m_originalURL;
- String m_url;
- String m_title;
- uint64_t m_itemID;
- Vector<uint8_t> m_backForwardData;
- String m_snapshotUUID;
+ explicit WebBackForwardListItem(BackForwardListItemState&&, uint64_t pageID);
+
+ BackForwardListItemState m_itemState;
+ uint64_t m_pageID;
};
typedef Vector<RefPtr<WebBackForwardListItem>> BackForwardListItemVector;