summaryrefslogtreecommitdiffstats
path: root/Tools/WebKitTestRunner/WorkQueueManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/WebKitTestRunner/WorkQueueManager.cpp')
-rw-r--r--Tools/WebKitTestRunner/WorkQueueManager.cpp22
1 files changed, 12 insertions, 10 deletions
diff --git a/Tools/WebKitTestRunner/WorkQueueManager.cpp b/Tools/WebKitTestRunner/WorkQueueManager.cpp
index e74fa3464..63f491b47 100644
--- a/Tools/WebKitTestRunner/WorkQueueManager.cpp
+++ b/Tools/WebKitTestRunner/WorkQueueManager.cpp
@@ -28,17 +28,17 @@
#include "PlatformWebView.h"
#include "TestController.h"
-#include <WebKit2/WKPage.h>
-#include <WebKit2/WKRetainPtr.h>
+#include <WebKit/WKPage.h>
+#include <WebKit/WKPagePrivate.h>
+#include <WebKit/WKRetainPtr.h>
#include <stdio.h>
-#include <wtf/PassOwnPtr.h>
#include <wtf/text/CString.h>
namespace WTR {
static inline WKPageRef mainPage()
{
- return TestController::shared().mainWebView()->page();
+ return TestController::singleton().mainWebView()->page();
}
static inline bool goToItemAtIndex(int index)
@@ -119,20 +119,21 @@ bool WorkQueueManager::processWorkQueue()
{
m_processing = false;
while (!m_processing && !m_workQueue.isEmpty()) {
- OwnPtr<WorkQueueItem> item(m_workQueue.takeFirst());
+ std::unique_ptr<WorkQueueItem> item(m_workQueue.takeFirst());
m_processing = (item->invoke() == WorkQueueItem::Loading);
}
return !m_processing;
}
-void WorkQueueManager::queueLoad(const String& url, const String& target)
+void WorkQueueManager::queueLoad(const String& url, const String& target, bool shouldOpenExternalURLs)
{
class LoadItem : public WorkQueueItem {
public:
- LoadItem(const String& url, const String& target)
+ LoadItem(const String& url, const String& target, bool shouldOpenExternalURLs)
: m_url(AdoptWK, WKURLCreateWithUTF8CString(url.utf8().data()))
, m_target(target)
+ , m_shouldOpenExternalURLs(shouldOpenExternalURLs)
{
}
@@ -143,15 +144,16 @@ void WorkQueueManager::queueLoad(const String& url, const String& target)
fprintf(stderr, "queueLoad for a specific target is not implemented.\n");
return WorkQueueItem::NonLoading;
}
- WKPageLoadURL(mainPage(), m_url.get());
+ WKPageLoadURLWithShouldOpenExternalURLsPolicy(mainPage(), m_url.get(), m_shouldOpenExternalURLs);
return WorkQueueItem::Loading;
}
WKRetainPtr<WKURLRef> m_url;
String m_target;
+ bool m_shouldOpenExternalURLs;
};
- enqueue(new LoadItem(url, target));
+ enqueue(new LoadItem(url, target, shouldOpenExternalURLs));
}
void WorkQueueManager::queueLoadHTMLString(const String& content, const String& baseURL, const String& unreachableURL)
@@ -222,7 +224,7 @@ void WorkQueueManager::enqueue(WorkQueueItem* item)
return;
}
- m_workQueue.append(adoptPtr(item));
+ m_workQueue.append(std::unique_ptr<WorkQueueItem>(item));
}
} // namespace WTR