[BlackBerry] Update BlackBerry JavaScript API

https://bugs.webkit.org/show_bug.cgi?id=114065

Patch by Jeff Rogers <jrogers@rim.com> on 2013-04-08
Reviewed by Rob Buis.

.:

Internal PR 317350
Export JSC symbols in BlackBerry build.

* Source/cmake/OptionsBlackBerry.cmake:

Source/WebKit:

Internal PR 317350
Remove obsolete files.

* PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

Internal PR 317350
Add new API for determining if user gesture is being processed.
Remove obsolete files.
Properly expose JSC global context.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPage::executeJavaScriptFunction):
(BlackBerry::WebKit::WebPage::globalContext):
(BlackBerry::WebKit::WebPage::isProcessingUserGesture):
(WebKit):
* Api/WebPage.h:
* Api/WebPageClient.h:
* Api/WebPage_p.h:
(WebPagePrivate):
* WebCoreSupport/ChromeClientBlackBerry.cpp:
* WebCoreSupport/ChromeClientBlackBerry.h:
(ChromeClientBlackBerry):
* WebCoreSupport/ClientExtension.cpp: Removed.
* WebCoreSupport/ClientExtension.h: Removed.
* WebCoreSupport/ExternalExtension.cpp: Removed.
* WebCoreSupport/ExternalExtension.h: Removed.
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDidClearWindowObjectInWorld):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147960 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent ad84e456
2013-04-08 Jeff Rogers <jrogers@rim.com>
[BlackBerry] Update BlackBerry JavaScript API
https://bugs.webkit.org/show_bug.cgi?id=114065
Reviewed by Rob Buis.
Internal PR 317350
Export JSC symbols in BlackBerry build.
* Source/cmake/OptionsBlackBerry.cmake:
2013-04-08 Martin Robinson <mrobinson@igalia.com>
[GTK] Configure should verify ICU is installed on mingw
......
2013-04-08 Jeff Rogers <jrogers@rim.com>
[BlackBerry] Update BlackBerry JavaScript API
https://bugs.webkit.org/show_bug.cgi?id=114065
Reviewed by Rob Buis.
Internal PR 317350
Remove obsolete files.
* PlatformBlackBerry.cmake:
2013-04-07 Patrick Gansterer <paroga@webkit.org>
Remove references to Skia and V8 from CMake files
......
......@@ -87,7 +87,6 @@ list(APPEND WebKit_SOURCES
blackberry/WebCoreSupport/BackForwardListBlackBerry.cpp
blackberry/WebCoreSupport/CacheClientBlackBerry.cpp
blackberry/WebCoreSupport/ChromeClientBlackBerry.cpp
blackberry/WebCoreSupport/ClientExtension.cpp
blackberry/WebCoreSupport/ContextMenuClientBlackBerry.cpp
blackberry/WebCoreSupport/CredentialManager.cpp
blackberry/WebCoreSupport/CredentialTransformData.cpp
......@@ -95,7 +94,6 @@ list(APPEND WebKit_SOURCES
blackberry/WebCoreSupport/DeviceOrientationClientBlackBerry.cpp
blackberry/WebCoreSupport/DragClientBlackBerry.cpp
blackberry/WebCoreSupport/EditorClientBlackBerry.cpp
blackberry/WebCoreSupport/ExternalExtension.cpp
blackberry/WebCoreSupport/FrameLoaderClientBlackBerry.cpp
blackberry/WebCoreSupport/FrameNetworkingContextBlackBerry.cpp
blackberry/WebCoreSupport/GeolocationClientBlackBerry.cpp
......
......@@ -114,6 +114,7 @@
#include "RenderTreeAsText.h"
#include "RenderView.h"
#include "RenderWidget.h"
#include "ScriptController.h"
#include "ScriptSourceCode.h"
#include "ScriptValue.h"
#include "ScrollTypes.h"
......@@ -344,11 +345,6 @@ void WebPage::autofillTextField(const BlackBerry::Platform::String& item)
d->m_autofillManager->autofillTextField(item);
}
void WebPage::enableQnxJavaScriptObject(bool enabled)
{
d->m_enableQnxJavaScriptObject = enabled;
}
BlackBerry::Platform::String WebPage::renderTreeAsText()
{
return externalRepresentation(d->m_mainFrame);
......@@ -424,7 +420,6 @@ WebPagePrivate::WebPagePrivate(WebPage* webPage, WebPageClient* client, const In
, m_fullscreenNode(0)
, m_hasInRegionScrollableAreas(false)
, m_updateDelegatedOverlaysDispatched(false)
, m_enableQnxJavaScriptObject(false)
, m_deferredTasksTimer(this, &WebPagePrivate::deferredTasksTimerFired)
, m_selectPopup(0)
, m_autofillManager(AutofillManager::create(this))
......@@ -900,7 +895,7 @@ void WebPage::executeJavaScriptFunction(const std::vector<BlackBerry::Platform::
for (unsigned i = 0; i < args.size(); ++i)
argListRef[i] = BlackBerryJavaScriptVariantToJSValueRef(ctx, args[i]);
JSValueRef windowObjectValue = windowObject();
JSValueRef windowObjectValue = toRef(d->m_mainFrame->script()->globalObject(mainThreadNormalWorld()));
JSObjectRef obj = JSValueToObject(ctx, windowObjectValue, 0);
JSObjectRef thisObject = obj;
for (unsigned i = 0; i < function.size(); ++i) {
......@@ -4742,22 +4737,12 @@ void WebPage::setTimeoutForJavaScriptExecution(unsigned ms)
doc->globalData()->timeoutChecker.setTimeoutInterval(ms);
}
JSContextRef WebPage::scriptContext() const
JSGlobalContextRef WebPage::globalContext() const
{
if (!d->m_mainFrame)
return 0;
JSC::Bindings::RootObject *root = d->m_mainFrame->script()->bindingRootObject();
if (!root)
return 0;
JSC::ExecState *exec = root->globalObject()->globalExec();
return toRef(exec);
}
JSValueRef WebPage::windowObject() const
{
return toRef(d->m_mainFrame->script()->globalObject(mainThreadNormalWorld()));
return toGlobalRef(d->m_mainFrame->script()->globalObject(mainThreadNormalWorld())->globalExec());
}
// Serialize only the members of HistoryItem which are needed by the client,
......@@ -6260,5 +6245,10 @@ Color WebPagePrivate::documentBackgroundColor() const
return color;
}
bool WebPage::isProcessingUserGesture() const
{
return ScriptController::processingUserGesture();
}
}
}
......@@ -26,17 +26,12 @@
#include <BlackBerryPlatformInputEvents.h>
#include <BlackBerryPlatformString.h>
#include <BlackBerryPlatformWebContext.h>
#include <JavaScriptCore/JSBase.h>
#include <imf/input_data.h>
#include <network/NetworkRequest.h>
#include <string>
#include <vector>
struct OpaqueJSContext;
typedef const struct OpaqueJSContext* JSContextRef;
struct OpaqueJSValue;
typedef const struct OpaqueJSValue* JSValueRef;
namespace WebCore {
class ChromeClientBlackBerry;
class Frame;
......@@ -240,8 +235,7 @@ public:
// Case sensitivity, wrapping, and highlighting all matches are also toggleable.
bool findNextString(const char*, bool forward, bool caseSensitive, bool wrap, bool highlightAllMatches);
JSContextRef scriptContext() const;
JSValueRef windowObject() const;
JSGlobalContextRef globalContext() const;
unsigned timeoutForJavaScriptExecution() const;
void setTimeoutForJavaScriptExecution(unsigned ms);
......@@ -383,8 +377,6 @@ public:
void autofillTextField(const BlackBerry::Platform::String&);
void enableQnxJavaScriptObject(bool);
BlackBerry::Platform::String renderTreeAsText();
void updateNotificationPermission(const BlackBerry::Platform::String& requestId, bool allowed);
......@@ -395,6 +387,8 @@ public:
void animateToScaleAndDocumentScrollPosition(double destinationZoomScale, const BlackBerry::Platform::FloatPoint& destinationScrollPosition, bool shouldConstrainScrollingToContentEdge = true);
bool isProcessingUserGesture() const;
private:
virtual ~WebPage();
......
......@@ -108,7 +108,6 @@ public:
virtual void notifyDocumentOnLoad(bool) = 0;
virtual void notifyWindowObjectCleared() = 0;
virtual BlackBerry::Platform::String invokeClientJavaScriptCallback(const char* const* args, unsigned numArgs) = 0;
virtual void addMessageToConsole(const unsigned short* message, unsigned messageLength, const unsigned short* source, unsigned sourceLength, unsigned lineNumber) = 0;
virtual int showAlertDialog(AlertType) = 0;
......@@ -123,11 +122,6 @@ public:
virtual bool shouldInterruptJavaScript() = 0;
virtual void javascriptSourceParsed(const unsigned short* url, unsigned urlLength, const unsigned short* script, unsigned scriptLength) = 0;
virtual void javascriptParsingFailed(const unsigned short* url, unsigned urlLength, const unsigned short* error, unsigned errorLength, int lineNumber) = 0;
virtual void javascriptPaused(const unsigned short* stack, unsigned stackLength) = 0;
virtual void javascriptContinued() = 0;
virtual void contentsSizeChanged() = 0;
virtual void scrollChanged() = 0;
virtual void scaleChanged() = 0;
......
......@@ -591,7 +591,6 @@ public:
bool m_wouldSetFocused;
bool m_wouldSetPageVisibilityState;
bool m_cachedFocused;
bool m_enableQnxJavaScriptObject;
Vector<bool> m_cachedPopupListSelecteds;
int m_cachedPopupListSelectedIndex;
BlackBerry::Platform::String m_cachedDateTimeInput;
......
2013-04-08 Jeff Rogers <jrogers@rim.com>
[BlackBerry] Update BlackBerry JavaScript API
https://bugs.webkit.org/show_bug.cgi?id=114065
Reviewed by Rob Buis.
Internal PR 317350
Add new API for determining if user gesture is being processed.
Remove obsolete files.
Properly expose JSC global context.
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPage::executeJavaScriptFunction):
(BlackBerry::WebKit::WebPage::globalContext):
(BlackBerry::WebKit::WebPage::isProcessingUserGesture):
(WebKit):
* Api/WebPage.h:
* Api/WebPageClient.h:
* Api/WebPage_p.h:
(WebPagePrivate):
* WebCoreSupport/ChromeClientBlackBerry.cpp:
* WebCoreSupport/ChromeClientBlackBerry.h:
(ChromeClientBlackBerry):
* WebCoreSupport/ClientExtension.cpp: Removed.
* WebCoreSupport/ClientExtension.h: Removed.
* WebCoreSupport/ExternalExtension.cpp: Removed.
* WebCoreSupport/ExternalExtension.h: Removed.
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDidClearWindowObjectInWorld):
2013-04-08 Jakob Petsovits <jpetsovits@blackberry.com>
[BlackBerry] More null checks for m_mainFrame
......
......@@ -824,31 +824,4 @@ PassOwnPtr<ColorChooser> ChromeClientBlackBerry::createColorChooser(ColorChooser
return nullptr;
}
void ChromeClientBlackBerry::addSearchProvider(const BlackBerry::Platform::String& originURL, const BlackBerry::Platform::String& newURL)
{
// Early return if this function is not triggered by a user gesture.
if (!ScriptController::processingUserGesture())
return;
// Security origin host & target host must share a common registered domain
KURL url = KURL(KURL(), newURL);
String originHost = KURL(KURL(), originURL).host();
if (url.isValid() && BlackBerry::Platform::getRegisteredDomain(originHost) == BlackBerry::Platform::getRegisteredDomain(url.host()))
m_webPagePrivate->client()->addSearchProvider(newURL);
}
int ChromeClientBlackBerry::isSearchProviderInstalled(const BlackBerry::Platform::String& newURL)
{
// Returns a value based on comparing url to the URLs of the results pages of the installed search engines.
// 0 - None of the installed search engines match url.
// 1 - One or more installed search engines match url, but none are the user's default search engine.
// 2 - The user's default search engine matches url.
KURL url = KURL(KURL(), newURL);
if (url.isValid())
return m_webPagePrivate->client()->isSearchProviderInstalled(newURL);
return 0;
}
} // namespace WebCore
......@@ -151,9 +151,6 @@ public:
virtual bool allowsAcceleratedCompositing() const;
#endif
virtual void addSearchProvider(const BlackBerry::Platform::String&, const BlackBerry::Platform::String&);
virtual int isSearchProviderInstalled(const BlackBerry::Platform::String&);
BlackBerry::WebKit::WebPagePrivate* webPagePrivate() const { return m_webPagePrivate; }
private:
......
/*
* Copyright (C) 2010, 2011, 2012 Research In Motion Limited. All rights reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config.h"
#include "ClientExtension.h"
#include "Frame.h"
#include "WebPageClient.h"
#include <JavaScriptCore/API/JSCallbackObject.h>
#include <JavaScriptCore/JSObjectRef.h>
#include <JavaScriptCore/JSStringRef.h>
#include <JavaScriptCore/JSValueRef.h>
#include <JavaScriptCore/JavaScript.h>
#include <string>
using namespace WebCore;
using namespace BlackBerry::WebKit;
using namespace std;
static JSValueRef clientExtensionMethod(
JSContextRef ctx, JSObjectRef functionObject, JSObjectRef thisObject,
size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
{
JSValueRef jsRetVal = JSValueMakeUndefined(ctx);
if (argumentCount <= 0)
return jsRetVal;
char** strArgs = new char*[argumentCount];
for (unsigned i = 0; i < argumentCount; ++i) {
JSStringRef string = JSValueToStringCopy(ctx, arguments[i], 0);
size_t sizeUTF8 = JSStringGetMaximumUTF8CStringSize(string);
strArgs[i] = new char[sizeUTF8];
JSStringGetUTF8CString(string, strArgs[i], sizeUTF8);
JSStringRelease(string);
}
WebPageClient* client = reinterpret_cast<WebPageClient*>(JSObjectGetPrivate(thisObject));
BlackBerry::Platform::String retVal;
if (client)
retVal = client->invokeClientJavaScriptCallback(strArgs, argumentCount);
// FIXME: add a mechanism to pass the length of the string here
if (!retVal.empty())
jsRetVal = JSValueMakeString(ctx, JSStringCreateWithUTF8CString(retVal.c_str()));
for (unsigned i = 0; i < argumentCount; ++i)
delete[] strArgs[i];
delete[] strArgs;
return jsRetVal;
}
static void clientExtensionInitialize(JSContextRef context, JSObjectRef object)
{
UNUSED_PARAM(context);
UNUSED_PARAM(object);
}
static void clientExtensionFinalize(JSObjectRef object)
{
UNUSED_PARAM(object);
}
static JSStaticFunction clientExtensionStaticFunctions[] = {
{ "callExtensionMethod", clientExtensionMethod, kJSPropertyAttributeNone },
{ 0, 0, 0 }
};
static JSStaticValue clientExtensionStaticValues[] = {
{ 0, 0, 0, 0 }
};
// FIXME: Revisit the creation of this class and make sure this is the best way to approach it.
void attachExtensionObjectToFrame(Frame* frame, WebPageClient* client)
{
JSDOMWindow* window = frame->script()->windowShell(mainThreadNormalWorld())->window();
JSC::ExecState* exec = window->globalExec();
JSC::JSLockHolder lock(exec);
JSContextRef scriptCtx = toRef(exec);
JSClassDefinition definition = kJSClassDefinitionEmpty;
definition.staticValues = clientExtensionStaticValues;
definition.staticFunctions = clientExtensionStaticFunctions;
definition.initialize = clientExtensionInitialize;
definition.finalize = clientExtensionFinalize;
JSClassRef clientClass = JSClassCreate(&definition);
JSObjectRef clientClassObject = JSObjectMake(scriptCtx, clientClass, 0);
JSObjectSetPrivate(clientClassObject, reinterpret_cast<void*>(client));
String name("qnx");
JSC::PutPropertySlot slot;
window->put(window, exec, JSC::Identifier(exec, name), toJS(clientClassObject), slot);
JSClassRelease(clientClass);
}
/*
* Copyright (C) 2010, 2011 Research In Motion Limited. All rights reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef ClientExtension_h
#define ClientExtension_h
namespace WebCore {
class Frame;
}
namespace BlackBerry {
namespace WebKit {
class WebPageClient;
}
}
void attachExtensionObjectToFrame(WebCore::Frame*, BlackBerry::WebKit::WebPageClient*);
#endif // ClientExtension_h
/*
* Copyright (C) 2012 Research In Motion Limited. All rights reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "config.h"
#include "ExternalExtension.h"
#include "Chrome.h"
#include "ChromeClientBlackBerry.h"
#include "Frame.h"
#include "Page.h"
#include "SecurityOrigin.h"
#include "WebPageClient.h"
#include <JavaScriptCore/API/JSCallbackObject.h>
#include <JavaScriptCore/JSObjectRef.h>
#include <JavaScriptCore/JSStringRef.h>
#include <JavaScriptCore/JSValueRef.h>
#include <JavaScriptCore/JavaScript.h>
#include <string>
using namespace WebCore;
using namespace BlackBerry::WebKit;
using namespace std;
static JSValueRef addSearchProviderMethod(
JSContextRef ctx, JSObjectRef functionObject, JSObjectRef thisObject,
size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
{
JSValueRef jsRetVal = JSValueMakeUndefined(ctx);
if (argumentCount < 1)
return jsRetVal;
// Double check if page chrome client exists
Frame* frame = reinterpret_cast<Frame*>(JSObjectGetPrivate(thisObject));
if (frame) {
Page* page = frame->page();
if (!page || !page->chrome())
return jsRetVal;
JSStringRef string = JSValueToStringCopy(ctx, arguments[0], 0);
size_t sizeUTF8 = JSStringGetMaximumUTF8CStringSize(string);
char* newURL = new char[sizeUTF8];
JSStringGetUTF8CString(string, newURL, sizeUTF8);
JSStringRelease(string);
String originURL = frame->document()->securityOrigin()->toString();
ChromeClientBlackBerry* chrome = static_cast<ChromeClientBlackBerry*> (page->chrome()->client());
chrome->addSearchProvider(originURL, newURL);
}
return jsRetVal;
}
static JSValueRef IsSearchProviderInstalledMethod(
JSContextRef ctx, JSObjectRef functionObject, JSObjectRef thisObject,
size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
{
JSValueRef jsRetVal = JSValueMakeUndefined(ctx);
if (argumentCount < 1)
return jsRetVal;
// Double check if page chrome client exists
Frame* frame = reinterpret_cast<Frame*>(JSObjectGetPrivate(thisObject));
if (frame) {
Page* page = frame->page();
if (!page || !page->chrome())
return jsRetVal;
JSStringRef string = JSValueToStringCopy(ctx, arguments[0], 0);
size_t sizeUTF8 = JSStringGetMaximumUTF8CStringSize(string);
char* newURL = new char[sizeUTF8];
JSStringGetUTF8CString(string, newURL, sizeUTF8);
JSStringRelease(string);
ChromeClientBlackBerry* chrome = static_cast<ChromeClientBlackBerry*> (page->chrome()->client());
int retVal = chrome->isSearchProviderInstalled(newURL);
jsRetVal = JSValueMakeNumber(ctx, retVal);
}
return jsRetVal;
}
static void externalExtensionInitialize(JSContextRef context, JSObjectRef object)
{
UNUSED_PARAM(context);
UNUSED_PARAM(object);
}
static void externalExtensionFinalize(JSObjectRef object)
{
UNUSED_PARAM(object);
}
static JSStaticFunction externalExtensionStaticFunctions[] = {
{ "AddSearchProvider", addSearchProviderMethod, kJSPropertyAttributeNone },
{ "IsSearchProviderInstalled", IsSearchProviderInstalledMethod, kJSPropertyAttributeReadOnly },
{ 0, 0, 0 }
};
static JSStaticValue externalExtensionStaticValues[] = {
{ 0, 0, 0, 0 }
};
// FIXME: Revisit the creation of this class and make sure this is the best way to approach it.
void attachExternalExtensionObjectToFrame(Frame* frame)
{
JSDOMWindow* window = frame->script()->windowShell(mainThreadNormalWorld())->window();
JSC::ExecState* exec = window->globalExec();
JSC::JSLockHolder lock(exec);
JSContextRef scriptCtx = toRef(exec);
JSClassDefinition definition = kJSClassDefinitionEmpty;
definition.staticValues = externalExtensionStaticValues;
definition.staticFunctions = externalExtensionStaticFunctions;
definition.initialize = externalExtensionInitialize;
definition.finalize = externalExtensionFinalize;
JSClassRef clientClass = JSClassCreate(&definition);
JSObjectRef clientClassObject = JSObjectMake(scriptCtx, clientClass, 0);
JSObjectSetPrivate(clientClassObject, reinterpret_cast<void*>(frame));
String name("external");
JSC::PutPropertySlot slot;
window->put(window, exec, JSC::Identifier(exec, name), toJS(clientClassObject), slot);
JSClassRelease(clientClass);
}
/*
* Copyright (C) 2012 Research In Motion Limited. All rights reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef ExternalExtension_h
#define ExternalExtension_h
namespace WebCore {
class Frame;
}
void attachExternalExtensionObjectToFrame(WebCore::Frame*);
#endif // ExternalExtension_h
......@@ -24,18 +24,12 @@
#include "BackForwardController.h"
#include "BackingStoreClient.h"
#include "BackingStore_p.h"
#include "Chrome.h"
#include "ChromeClientBlackBerry.h"
#include "ClientExtension.h"
#include "CookieManager.h"
#include "CredentialManager.h"
#include "CredentialTransformData.h"
#include "DumpRenderTreeClient.h"
#include "ExternalExtension.h"
#include "FrameLoadRequest.h"
#include "FrameNetworkingContextBlackBerry.h"
#include "FrameView.h"
#include "HTMLFormElement.h"
#include "HTMLHeadElement.h"
#include "HTMLLinkElement.h"
#include "HTMLMediaElement.h"
......@@ -919,12 +913,6 @@ void FrameLoaderClientBlackBerry::dispatchDidClearWindowObjectInWorld(DOMWrapper
if (world != mainThreadNormalWorld())
return;