NavigationActionData.h [plain text]
#pragma once
#include "WebEvent.h"
#include <WebCore/AdClickAttribution.h>
#include <WebCore/BackForwardItemIdentifier.h>
#include <WebCore/FloatPoint.h>
#include <WebCore/FrameLoaderTypes.h>
#include <WebCore/SecurityOriginData.h>
namespace IPC {
class Decoder;
class Encoder;
}
namespace WebKit {
struct NavigationActionData {
void encode(IPC::Encoder&) const;
static Optional<NavigationActionData> decode(IPC::Decoder&);
WebCore::NavigationType navigationType { WebCore::NavigationType::Other };
OptionSet<WebEvent::Modifier> modifiers;
WebMouseEvent::Button mouseButton { WebMouseEvent::NoButton };
WebMouseEvent::SyntheticClickType syntheticClickType { WebMouseEvent::NoTap };
uint64_t userGestureTokenIdentifier;
bool canHandleRequest { false };
WebCore::ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy { WebCore::ShouldOpenExternalURLsPolicy::ShouldNotAllow };
WTF::String downloadAttribute;
WebCore::FloatPoint clickLocationInRootViewCoordinates;
bool isRedirect { false };
bool treatAsSameOriginNavigation { false };
bool hasOpenedFrames { false };
bool openedByDOMWithOpener { false };
WebCore::SecurityOriginData requesterOrigin;
Optional<WebCore::BackForwardItemIdentifier> targetBackForwardItemIdentifier;
Optional<WebCore::BackForwardItemIdentifier> sourceBackForwardItemIdentifier;
WebCore::LockHistory lockHistory;
WebCore::LockBackForwardList lockBackForwardList;
WTF::String clientRedirectSourceForHistory;
Optional<WebCore::AdClickAttribution> adClickAttribution;
};
}