#include "PlatformBridge.h"
#include "Document.h"
#include "ScriptCallStack.h"
+#include "ScriptCallStackFactory.h"
#include "ScriptableDocumentParser.h"
#include "DOMWindow.h"
#include "Event.h"
#include <wtf/StdLibExtras.h>
#include <wtf/text/CString.h>
+#if PLATFORM(QT)
+#include <QScriptEngine>
+#endif
+
namespace WebCore {
void ScriptController::initializeThreading()
, m_inExecuteScript(false)
, m_processingTimerCallback(false)
, m_paused(false)
+ , m_allowPopupsFromPlugin(false)
, m_proxy(new V8Proxy(frame))
#if ENABLE(NETSCAPE_PLUGIN_API)
, m_windowScriptNPObject(0)
// This is the <a href="javascript:window.open('...')> case -> we let it through.
return true;
}
-
+ if (activeFrame->script()->allowPopupsFromPlugin())
+ return true;
// This is the <script>window.open(...)</script> case or a timer callback -> block it.
// Based on JSC version, use returned value of UserGestureIndicator::processingUserGesture for all other situations.
return UserGestureIndicator::processingUserGesture();
}
#if ENABLE(INSPECTOR)
-void ScriptController::setCaptureCallStackForUncaughtExceptions(bool)
+void ScriptController::setCaptureCallStackForUncaughtExceptions(bool value)
{
- v8::V8::SetCaptureStackTraceForUncaughtExceptions(true, ScriptCallStack::maxCallStackSizeToCapture);
+ v8::V8::SetCaptureStackTraceForUncaughtExceptions(value, ScriptCallStack::maxCallStackSizeToCapture, stackTraceOptions);
}
#endif