summaryrefslogtreecommitdiff
path: root/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp')
-rw-r--r--Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp34
1 files changed, 30 insertions, 4 deletions
diff --git a/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp b/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp
index 91279cb78..4c0c6aed3 100644
--- a/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp
+++ b/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp
@@ -28,16 +28,23 @@
#include "WKBundleFramePrivate.h"
#include "APIArray.h"
+#include "APISecurityOrigin.h"
+#include "InjectedBundleFileHandle.h"
#include "InjectedBundleHitTestResult.h"
+#include "InjectedBundleNodeHandle.h"
+#include "InjectedBundleRangeHandle.h"
+#include "InjectedBundleScriptWorld.h"
#include "WKAPICast.h"
#include "WKBundleAPICast.h"
#include "WKData.h"
#include "WebFrame.h"
-#include "WebSecurityOrigin.h"
+#include "WebPage.h"
#include <WebCore/Document.h>
+#include <WebCore/FocusController.h>
#include <WebCore/Frame.h>
#include <WebCore/FrameLoader.h>
#include <WebCore/FrameView.h>
+#include <WebCore/Page.h>
using namespace WebCore;
using namespace WebKit;
@@ -88,7 +95,7 @@ WKFrameLoadState WKBundleFrameGetFrameLoadState(WKBundleFrameRef frameRef)
WKArrayRef WKBundleFrameCopyChildFrames(WKBundleFrameRef frameRef)
{
- return toAPI(toImpl(frameRef)->childFrames().leakRef());
+ return toAPI(&toImpl(frameRef)->childFrames().leakRef());
}
JSGlobalContextRef WKBundleFrameGetJavaScriptContext(WKBundleFrameRef frameRef)
@@ -116,6 +123,11 @@ JSValueRef WKBundleFrameGetJavaScriptWrapperForRangeForWorld(WKBundleFrameRef fr
return toImpl(frameRef)->jsWrapperForWorld(toImpl(rangeHandleRef), toImpl(worldRef));
}
+JSValueRef WKBundleFrameGetJavaScriptWrapperForFileForWorld(WKBundleFrameRef frameRef, WKBundleFileHandleRef fileHandleRef, WKBundleScriptWorldRef worldRef)
+{
+ return toImpl(frameRef)->jsWrapperForWorld(toImpl(fileHandleRef), toImpl(worldRef));
+}
+
WKStringRef WKBundleFrameCopyName(WKBundleFrameRef frameRef)
{
return toCopiedAPI(toImpl(frameRef)->name());
@@ -228,6 +240,11 @@ void WKBundleFrameSetTextDirection(WKBundleFrameRef frameRef, WKStringRef direct
toImpl(frameRef)->setTextDirection(toWTFString(directionRef));
}
+void WKBundleFrameSetAccessibleName(WKBundleFrameRef frameRef, WKStringRef accessibleNameRef)
+{
+ toImpl(frameRef)->setAccessibleName(toWTFString(accessibleNameRef));
+}
+
WKDataRef WKBundleFrameCopyWebArchive(WKBundleFrameRef frameRef)
{
return WKBundleFrameCopyWebArchiveFilteringSubframes(frameRef, 0, 0);
@@ -235,7 +252,7 @@ WKDataRef WKBundleFrameCopyWebArchive(WKBundleFrameRef frameRef)
WKDataRef WKBundleFrameCopyWebArchiveFilteringSubframes(WKBundleFrameRef frameRef, WKBundleFrameFrameFilterCallback frameFilterCallback, void* context)
{
-#if PLATFORM(MAC)
+#if PLATFORM(COCOA)
RetainPtr<CFDataRef> data = toImpl(frameRef)->webArchiveData(frameFilterCallback, context);
if (data)
return WKDataCreate(CFDataGetBytePtr(data.get()), CFDataGetLength(data.get()));
@@ -268,5 +285,14 @@ WKSecurityOriginRef WKBundleFrameCopySecurityOrigin(WKBundleFrameRef frameRef)
if (!coreFrame)
return 0;
- return toCopiedAPI(coreFrame->document()->securityOrigin());
+ return toCopiedAPI(&coreFrame->document()->securityOrigin());
+}
+
+void WKBundleFrameFocus(WKBundleFrameRef frameRef)
+{
+ Frame* coreFrame = toImpl(frameRef)->coreFrame();
+ if (!coreFrame)
+ return;
+
+ coreFrame->page()->focusController().setFocusedFrame(coreFrame);
}