[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
weinig at apple.com
weinig at apple.com
Wed Dec 22 14:18:59 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 55ecae38f938b97e02c00b00934d963b370bdf70
Author: weinig at apple.com <weinig at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Oct 6 17:31:40 2010 +0000
Generate the messages sent to the WebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=47239
Reviewed by Adam Roben.
* Platform/CoreIPC/Arguments.h:
Add additional typedefs.
* Platform/CoreIPC/HandleMessage.h:
(CoreIPC::handleMessage):
Add more handleMessage implementations.
* Scripts/webkit2/messages.py:
* Scripts/webkit2/messages_unittest.py:
Add headers for reply argument types.
* Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Removed.
* Shared/StringPairVector.h: Added.
This file is a hack to work around a deficiency in the generator
which can't deal with class templates with more than one argument.
* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
* UIProcess/API/qt/qwkpage.cpp:
* UIProcess/API/qt/qwkpage_p.h:
* UIProcess/PageClient.h:
* UIProcess/WebEditCommandProxy.cpp:
* UIProcess/WebFormClient.cpp:
* UIProcess/WebFormClient.h:
* UIProcess/WebPageProxy.cpp:
* UIProcess/WebPageProxy.h:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
* WebProcess/WebPage/WebBackForwardListProxy.cpp:
* WebProcess/WebPage/WebPage.cpp:
Migrate to generated calls.
* UIProcess/WebPageProxy.messages.in: Added.
New messages definitions file.
* DerivedSources.make:
* DerivedSources.pro:
* win/WebKit2.vcproj:
* WebKit2.pro:
* WebKit2.xcodeproj/project.pbxproj:
Add new files.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69210 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index 1251f91..19ab2ac 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,3 +1,54 @@
+2010-10-06 Sam Weinig <sam at webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Generate the messages sent to the WebPageProxy
+ https://bugs.webkit.org/show_bug.cgi?id=47239
+
+ * Platform/CoreIPC/Arguments.h:
+ Add additional typedefs.
+
+ * Platform/CoreIPC/HandleMessage.h:
+ (CoreIPC::handleMessage):
+ Add more handleMessage implementations.
+
+ * Scripts/webkit2/messages.py:
+ * Scripts/webkit2/messages_unittest.py:
+ Add headers for reply argument types.
+
+ * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Removed.
+
+ * Shared/StringPairVector.h: Added.
+ This file is a hack to work around a deficiency in the generator
+ which can't deal with class templates with more than one argument.
+
+ * UIProcess/API/mac/PageClientImpl.h:
+ * UIProcess/API/mac/PageClientImpl.mm:
+ * UIProcess/API/qt/qwkpage.cpp:
+ * UIProcess/API/qt/qwkpage_p.h:
+ * UIProcess/PageClient.h:
+ * UIProcess/WebEditCommandProxy.cpp:
+ * UIProcess/WebFormClient.cpp:
+ * UIProcess/WebFormClient.h:
+ * UIProcess/WebPageProxy.cpp:
+ * UIProcess/WebPageProxy.h:
+ * WebProcess/WebCoreSupport/WebChromeClient.cpp:
+ * WebProcess/WebCoreSupport/WebEditorClient.cpp:
+ * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
+ * WebProcess/WebPage/WebBackForwardListProxy.cpp:
+ * WebProcess/WebPage/WebPage.cpp:
+ Migrate to generated calls.
+
+ * UIProcess/WebPageProxy.messages.in: Added.
+ New messages definitions file.
+
+ * DerivedSources.make:
+ * DerivedSources.pro:
+ * win/WebKit2.vcproj:
+ * WebKit2.pro:
+ * WebKit2.xcodeproj/project.pbxproj:
+ Add new files.
+
2010-10-05 Anders Carlsson <andersca at apple.com>
Reviewed by Sam Weinig.
diff --git a/WebKit2/DerivedSources.make b/WebKit2/DerivedSources.make
index 34c9cb3..0138282 100644
--- a/WebKit2/DerivedSources.make
+++ b/WebKit2/DerivedSources.make
@@ -3,6 +3,7 @@ VPATH = \
$(WebKit2)/WebProcess/Plugins \
$(WebKit2)/WebProcess/WebPage \
$(WebKit2)/WebProcess \
+ $(WebKit2)/UIProcess \
$(WebKit2)/UIProcess/Plugins \
#
@@ -12,6 +13,7 @@ MESSAGE_RECEIVERS = \
PluginProcessProxy \
PluginProxy \
WebPage \
+ WebPageProxy \
WebProcess \
WebProcessConnection \
#
diff --git a/WebKit2/DerivedSources.pro b/WebKit2/DerivedSources.pro
index b73e935..8c5cad5 100644
--- a/WebKit2/DerivedSources.pro
+++ b/WebKit2/DerivedSources.pro
@@ -52,6 +52,18 @@ messagereceiver_generator.target = $${OUTPUT_DIR}/WebKit2/generated/WebPageMes
generated_files.depends += messagereceiver_generator
QMAKE_EXTRA_TARGETS += messagereceiver_generator
+processmessageheader_generator.commands = python $${SRC_ROOT_DIR}/WebKit2/Scripts/generate-messages-header.py $${SRC_ROOT_DIR}/WebKit2/UIProcess/WebPageProxy.messages.in > $$OUTPUT_DIR/WebKit2/generated/WebPageProxyMessages.h
+processmessageheader_generator.depends = $${SRC_ROOT_DIR}/WebKit2/Scripts/generate-messages-header.py $${SRC_ROOT_DIR}/UIProcess/WebPageProxy/WebProcess.messages.in
+processmessageheader_generator.target = $${OUTPUT_DIR}/WebKit2/generated/WebPageProxyMessages.h
+generated_files.depends += processmessageheader_generator
+QMAKE_EXTRA_TARGETS += processmessageheader_generator
+
+processmessagereceiver_generator.commands = python $${SRC_ROOT_DIR}/WebKit2/Scripts/generate-message-receiver.py $${SRC_ROOT_DIR}/WebKit2/UIProcess/WebPageProxy.messages.in > $$OUTPUT_DIR/WebKit2/generated/WebPageProxyMessageReceiver.cpp
+processmessagereceiver_generator.depends = $${SRC_ROOT_DIR}/WebKit2/Scripts/generate-message-receiver.py $${SRC_ROOT_DIR}/WebKit2/UIProcess/WebPageProxy.messages.in
+processmessagereceiver_generator.target = $${OUTPUT_DIR}/WebKit2/generated/WebPageProxyMessageReceiver.cpp
+generated_files.depends += processmessagereceiver_generator
+QMAKE_EXTRA_TARGETS += processmessagereceiver_generator
+
processmessageheader_generator.commands = python $${SRC_ROOT_DIR}/WebKit2/Scripts/generate-messages-header.py $${SRC_ROOT_DIR}/WebKit2/WebProcess/WebProcess.messages.in > $$OUTPUT_DIR/WebKit2/generated/WebProcessMessages.h
processmessageheader_generator.depends = $${SRC_ROOT_DIR}/WebKit2/Scripts/generate-messages-header.py $${SRC_ROOT_DIR}/WebKit2/WebProcess/WebProcess.messages.in
processmessageheader_generator.target = $${OUTPUT_DIR}/WebKit2/generated/WebProcessMessages.h
diff --git a/WebKit2/Platform/CoreIPC/Arguments.h b/WebKit2/Platform/CoreIPC/Arguments.h
index 63ec22d..42b6cba 100644
--- a/WebKit2/Platform/CoreIPC/Arguments.h
+++ b/WebKit2/Platform/CoreIPC/Arguments.h
@@ -208,6 +208,12 @@ template<typename T1, typename T2, typename T3, typename T4> Arguments4<T1&, T2&
template<typename T1, typename T2, typename T3, typename T4, typename T5> class Arguments5 : Arguments4<T1, T2, T3, T4> {
public:
+ typedef T1 FirstArgumentType;
+ typedef T2 SecondArgumentType;
+ typedef T3 ThirdArgumentType;
+ typedef T4 FourthArgumentType;
+ typedef T5 FifthArgumentType;
+
Arguments5(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5)
: Arguments4<T1, T2, T3, T4>(t1, t2, t3, t4)
, m_value(t5)
diff --git a/WebKit2/Platform/CoreIPC/HandleMessage.h b/WebKit2/Platform/CoreIPC/HandleMessage.h
index 46686fb..0a277ae 100644
--- a/WebKit2/Platform/CoreIPC/HandleMessage.h
+++ b/WebKit2/Platform/CoreIPC/HandleMessage.h
@@ -1,3 +1,28 @@
+/*
+ * Copyright (C) 2010 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
#ifndef HandleMessage_h
#define HandleMessage_h
@@ -21,6 +46,12 @@ void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P)
(object->*function)(argument);
}
+template<typename T, typename C>
+void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(CoreIPC::ArgumentDecoder*))
+{
+ (object->*function)(arguments);
+}
+
template<typename T, typename C, typename P1, typename P2>
void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1, P2))
{
@@ -33,6 +64,15 @@ void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1
(object->*function)(firstArgument, secondArgument);
}
+template<typename T, typename C, typename P1>
+void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1, CoreIPC::ArgumentDecoder*))
+{
+ typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
+ if (!arguments->decode(firstArgument))
+ return;
+ (object->*function)(firstArgument, arguments);
+}
+
template<typename T, typename C, typename P1, typename P2, typename P3>
void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1, P2, P3))
{
@@ -48,6 +88,90 @@ void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1
(object->*function)(firstArgument, secondArgument, thirdArgument);
}
+template<typename T, typename C, typename P1, typename P2>
+void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1, P2, CoreIPC::ArgumentDecoder*))
+{
+ typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
+ if (!arguments->decode(firstArgument))
+ return;
+ typename RemoveReference<typename T::SecondArgumentType>::Type secondArgument;
+ if (!arguments->decode(secondArgument))
+ return;
+ (object->*function)(firstArgument, secondArgument, arguments);
+}
+
+template<typename T, typename C, typename P1, typename P2, typename P3, typename P4>
+void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1, P2, P3, P4))
+{
+ typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
+ if (!arguments->decode(firstArgument))
+ return;
+ typename RemoveReference<typename T::SecondArgumentType>::Type secondArgument;
+ if (!arguments->decode(secondArgument))
+ return;
+ typename RemoveReference<typename T::ThirdArgumentType>::Type thirdArgument;
+ if (!arguments->decode(thirdArgument))
+ return;
+ typename RemoveReference<typename T::FourthArgumentType>::Type fourthArgument;
+ if (!arguments->decode(fourthArgument))
+ return;
+ (object->*function)(firstArgument, secondArgument, thirdArgument, fourthArgument);
+}
+
+template<typename T, typename C, typename P1, typename P2, typename P3>
+void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1, P2, P3, CoreIPC::ArgumentDecoder*))
+{
+ typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
+ if (!arguments->decode(firstArgument))
+ return;
+ typename RemoveReference<typename T::SecondArgumentType>::Type secondArgument;
+ if (!arguments->decode(secondArgument))
+ return;
+ typename RemoveReference<typename T::ThirdArgumentType>::Type thirdArgument;
+ if (!arguments->decode(thirdArgument))
+ return;
+ (object->*function)(firstArgument, secondArgument, thirdArgument, arguments);
+}
+
+template<typename T, typename C, typename P1, typename P2, typename P3, typename P4, typename P5>
+void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1, P2, P3, P4, P5))
+{
+ typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
+ if (!arguments->decode(firstArgument))
+ return;
+ typename RemoveReference<typename T::SecondArgumentType>::Type secondArgument;
+ if (!arguments->decode(secondArgument))
+ return;
+ typename RemoveReference<typename T::ThirdArgumentType>::Type thirdArgument;
+ if (!arguments->decode(thirdArgument))
+ return;
+ typename RemoveReference<typename T::FourthArgumentType>::Type fourthArgument;
+ if (!arguments->decode(fourthArgument))
+ return;
+ typename RemoveReference<typename T::FifthArgumentType>::Type fifthArgument;
+ if (!arguments->decode(fifthArgument))
+ return;
+ (object->*function)(firstArgument, secondArgument, thirdArgument, fourthArgument, fifthArgument);
+}
+
+template<typename T, typename C, typename P1, typename P2, typename P3, typename P4>
+void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1, P2, P3, P4, CoreIPC::ArgumentDecoder*))
+{
+ typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
+ if (!arguments->decode(firstArgument))
+ return;
+ typename RemoveReference<typename T::SecondArgumentType>::Type secondArgument;
+ if (!arguments->decode(secondArgument))
+ return;
+ typename RemoveReference<typename T::ThirdArgumentType>::Type thirdArgument;
+ if (!arguments->decode(thirdArgument))
+ return;
+ typename RemoveReference<typename T::FourthArgumentType>::Type fourthArgument;
+ if (!arguments->decode(fourthArgument))
+ return;
+ (object->*function)(firstArgument, secondArgument, thirdArgument, fourthArgument, arguments);
+}
+
template<typename T, typename C, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6>
void handleMessage(ArgumentDecoder* arguments, C* object, void (C::*function)(P1, P2, P3, P4, P5, P6))
{
@@ -109,6 +233,52 @@ void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object
(object->*function)(firstArgument);
}
+template<typename T, typename C, typename P1, typename P2>
+void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object, void (C::*function)(P1, P2))
+{
+ typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
+ if (!arguments->decode(firstArgument))
+ return;
+
+ typename RemoveReference<typename T::SecondArgumentType>::Type secondArgument;
+ if (!arguments->decode(secondArgument))
+ return;
+
+ (object->*function)(firstArgument, secondArgument);
+}
+
+template<typename T, typename C, typename P1, typename P2>
+void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object, void (C::*function)(P1, const P2&))
+{
+ typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
+ if (!arguments->decode(firstArgument))
+ return;
+
+ typename RemoveReference<typename T::SecondArgumentType>::Type secondArgument;
+ if (!arguments->decode(secondArgument))
+ return;
+
+ (object->*function)(firstArgument, secondArgument);
+}
+
+template<typename T, typename C, typename R1>
+void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object, void (C::*function)(R1&))
+{
+ typename RemoveReference<typename T::Reply::FirstArgumentType>::Type firstReplyArgument;
+ (object->*function)(firstReplyArgument);
+ reply->encode(firstReplyArgument);
+}
+
+template<typename T, typename C, typename R1, typename R2>
+void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object, void (C::*function)(R1&, R2&))
+{
+ typename RemoveReference<typename T::Reply::FirstArgumentType>::Type firstReplyArgument;
+ typename RemoveReference<typename T::Reply::SecondArgumentType>::Type secondReplyArgument;
+ (object->*function)(firstReplyArgument, secondReplyArgument);
+ reply->encode(firstReplyArgument);
+ reply->encode(secondReplyArgument);
+}
+
template<typename T, typename C, typename P1, typename R1>
void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object, void (C::*function)(P1, R1&))
{
@@ -121,6 +291,22 @@ void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object
reply->encode(firstReplyArgument);
}
+template<typename T, typename C, typename P1, typename P2, typename R1>
+void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object, void (C::*function)(P1, P2, R1&))
+{
+ typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
+ if (!arguments->decode(firstArgument))
+ return;
+
+ typename RemoveReference<typename T::SecondArgumentType>::Type secondArgument;
+ if (!arguments->decode(secondArgument))
+ return;
+
+ typename RemoveReference<typename T::Reply::FirstArgumentType>::Type firstReplyArgument;
+ (object->*function)(firstArgument, secondArgument, firstReplyArgument);
+ reply->encode(firstReplyArgument);
+}
+
template<typename T, typename C, typename P1, typename P2, typename P3, typename R1>
void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object, void (C::*function)(P1, P2, P3, R1&))
{
@@ -165,22 +351,6 @@ void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object
reply->encode(firstReplyArgument);
}
-template<typename T, typename C, typename P1, typename P2, typename R1>
-void handleMessage(ArgumentDecoder* arguments, ArgumentEncoder* reply, C* object, void (C::*function)(P1, P2, R1&))
-{
- typename RemoveReference<typename T::FirstArgumentType>::Type firstArgument;
- if (!arguments->decode(firstArgument))
- return;
-
- typename RemoveReference<typename T::SecondArgumentType>::Type secondArgument;
- if (!arguments->decode(secondArgument))
- return;
-
- typename RemoveReference<typename T::Reply::FirstArgumentType>::Type firstReplyArgument;
- (object->*function)(firstArgument, secondArgument, firstReplyArgument);
- reply->encode(firstReplyArgument);
-}
-
} // namespace CoreIPC
#endif // HandleMessage_h
diff --git a/WebKit2/Scripts/webkit2/messages.py b/WebKit2/Scripts/webkit2/messages.py
index 6f2d263..8dfad55 100644
--- a/WebKit2/Scripts/webkit2/messages.py
+++ b/WebKit2/Scripts/webkit2/messages.py
@@ -144,12 +144,16 @@ def function_parameter_type(type):
# Don't use references for built-in types.
builtin_types = frozenset([
'bool',
- 'float',
'double',
- 'uint8_t',
+ 'float',
+ 'int16_t',
+ 'int32_t',
+ 'int64_t',
+ 'int8_t',
'uint16_t',
'uint32_t',
'uint64_t',
+ 'uint8_t',
])
if type in builtin_types:
@@ -322,6 +326,7 @@ def argument_coder_headers_for_type(type):
special_cases = {
'WTF::String': '"ArgumentCoders.h"',
+ 'WebKit::InjectedBundleUserMessageEncoder': '"InjectedBundleUserMessageCoders.h"',
}
if type in special_cases:
@@ -381,6 +386,18 @@ def generate_message_handler(file):
type_headers = headers_for_type(type)
headers.update(type_headers)
+ for message in receiver.messages:
+ if message.reply_parameters is not None:
+ for reply_parameter in message.reply_parameters:
+ type = reply_parameter.type
+ argument_encoder_headers = argument_coder_headers_for_type(type)
+ if argument_encoder_headers:
+ headers.update(argument_encoder_headers)
+ continue
+
+ type_headers = headers_for_type(type)
+ headers.update(type_headers)
+
result = []
result.append(_license_header)
diff --git a/WebKit2/Scripts/webkit2/messages_unittest.py b/WebKit2/Scripts/webkit2/messages_unittest.py
index 3b45680..6826d5c 100644
--- a/WebKit2/Scripts/webkit2/messages_unittest.py
+++ b/WebKit2/Scripts/webkit2/messages_unittest.py
@@ -419,9 +419,11 @@ _expected_receiver_implementation = """/*
#include "ArgumentCoders.h"
#include "ArgumentDecoder.h"
+#include "Connection.h"
#include "HandleMessage.h"
#include "MachPort.h"
#include "Plugin.h"
+#include "WebCoreArgumentCoders.h"
#include "WebEvent.h"
#include "WebPageMessages.h"
#include "WebPreferencesStore.h"
diff --git a/WebKit2/Shared/CoreIPCSupport/WebPageProxyMessageKinds.h b/WebKit2/Shared/CoreIPCSupport/WebPageProxyMessageKinds.h
deleted file mode 100644
index 06bc6d2..0000000
--- a/WebKit2/Shared/CoreIPCSupport/WebPageProxyMessageKinds.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef WebPageProxyMessageKinds_h
-#define WebPageProxyMessageKinds_h
-
-#include "MessageID.h"
-
-// Messages sent from the web process to the WebPageProxy.
-
-namespace WebPageProxyMessage {
-
-enum Kind {
- CreateNewPage,
- ShowPage,
- RunJavaScriptAlert,
- RunJavaScriptConfirm,
- RunJavaScriptPrompt,
-
- ClosePage,
- ContentsSizeChanged,
- DecidePolicyForMIMEType,
- DecidePolicyForNavigationAction,
- DecidePolicyForNewWindowAction,
- DidChangeProgress,
- DidCommitLoadForFrame,
- DidCreateMainFrame,
- DidCreateSubFrame,
- DidFailLoadForFrame,
- DidFailProvisionalLoadForFrame,
- DidFinishDocumentLoadForFrame,
- DidFinishLoadForFrame,
- DidFinishProgress,
- DidFirstLayoutForFrame,
- DidFirstVisuallyNonEmptyLayoutForFrame,
- DidGetRenderTreeExternalRepresentation,
- DidGetSourceForFrame,
- DidReceiveEvent,
- DidReceiveServerRedirectForProvisionalLoadForFrame,
- DidReceiveTitleForFrame,
- DidRemoveFrameFromHierarchy,
- DidRunJavaScriptInMainFrame,
- DidSetFrame,
- DidStartProgress,
- DidStartProvisionalLoadForFrame,
- DidValidateMenuItem,
- MouseDidMoveOverElement,
- SetCursor,
- SetStatusText,
- SetToolTip,
- TakeFocus,
- WillSubmitForm,
-
- BackForwardAddItem,
- BackForwardGoToItem,
- BackForwardBackItem,
- BackForwardCurrentItem,
- BackForwardForwardItem,
- BackForwardItemAtIndex,
- BackForwardBackListCount,
- BackForwardForwardListCount,
-
- RegisterEditCommandForUndo,
- ClearAllEditCommands,
-
-#if USE(ACCELERATED_COMPOSITING)
- DidChangeAcceleratedCompositing,
-#endif
-};
-
-}
-
-namespace CoreIPC {
-
-template<> struct MessageKindTraits<WebPageProxyMessage::Kind> {
- static const MessageClass messageClass = MessageClassWebPageProxy;
-};
-
-}
-
-#endif // WebPageProxyMessageKinds_h
diff --git a/WebKit2/Shared/StringPairVector.h b/WebKit2/Shared/StringPairVector.h
new file mode 100644
index 0000000..ce2da4a
--- /dev/null
+++ b/WebKit2/Shared/StringPairVector.h
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 2010 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef StringPairVector_h
+#define StringPairVector_h
+
+#include "ArgumentCoders.h"
+#include <wtf/Vector.h>
+#include <wtf/text/WTFString.h>
+
+namespace WebKit {
+
+// This class is a hack to work around the fact that the IPC message generator
+// cannot deal with class templates with more than one paramter.
+class StringPairVector {
+public:
+ StringPairVector()
+ {
+ }
+
+ StringPairVector(Vector<std::pair<String, String> > stringPairVector)
+ {
+ m_stringPairVector.swap(stringPairVector);
+ }
+
+ void encode(CoreIPC::ArgumentEncoder* encoder) const
+ {
+ encoder->encode(m_stringPairVector);
+ }
+
+ static bool decode(CoreIPC::ArgumentDecoder* decoder, StringPairVector& stringPairVector)
+ {
+ return decoder->decode(stringPairVector.m_stringPairVector);
+ }
+
+ const Vector<std::pair<String, String> >& stringPairVector() const { return m_stringPairVector; }
+
+private:
+ Vector<std::pair<String, String> > m_stringPairVector;
+};
+
+} // namespace WebKit
+
+#endif // StringPairVector_h
diff --git a/WebKit2/UIProcess/API/mac/PageClientImpl.h b/WebKit2/UIProcess/API/mac/PageClientImpl.h
index f45ad71..748d7e3 100644
--- a/WebKit2/UIProcess/API/mac/PageClientImpl.h
+++ b/WebKit2/UIProcess/API/mac/PageClientImpl.h
@@ -52,7 +52,7 @@ private:
virtual void toolTipChanged(const String& oldToolTip, const String& newToolTip);
virtual void setCursor(const WebCore::Cursor&);
- void registerEditCommand(PassRefPtr<WebEditCommandProxy>, UndoOrRedo);
+ void registerEditCommand(PassRefPtr<WebEditCommandProxy>, WebPageProxy::UndoOrRedo);
void clearAllEditCommands();
void setEditCommandState(const String& commandName, bool isEnabled, int state);
diff --git a/WebKit2/UIProcess/API/mac/PageClientImpl.mm b/WebKit2/UIProcess/API/mac/PageClientImpl.mm
index bee4672..e0a5009 100644
--- a/WebKit2/UIProcess/API/mac/PageClientImpl.mm
+++ b/WebKit2/UIProcess/API/mac/PageClientImpl.mm
@@ -183,7 +183,7 @@ static NSString* nameForEditAction(EditAction editAction)
return nil;
}
-void PageClientImpl::registerEditCommand(PassRefPtr<WebEditCommandProxy> prpCommand, UndoOrRedo undoOrRedo)
+void PageClientImpl::registerEditCommand(PassRefPtr<WebEditCommandProxy> prpCommand, WebPageProxy::UndoOrRedo undoOrRedo)
{
RefPtr<WebEditCommandProxy> command = prpCommand;
@@ -191,7 +191,7 @@ void PageClientImpl::registerEditCommand(PassRefPtr<WebEditCommandProxy> prpComm
NSString *actionName = nameForEditAction(command->editAction());
NSUndoManager *undoManager = [m_wkView undoManager];
- [undoManager registerUndoWithTarget:m_undoTarget.get() selector:((undoOrRedo == Undo) ? @selector(undoEditing:) : @selector(redoEditing:)) object:commandObjC.get()];
+ [undoManager registerUndoWithTarget:m_undoTarget.get() selector:((undoOrRedo == WebPageProxy::Undo) ? @selector(undoEditing:) : @selector(redoEditing:)) object:commandObjC.get()];
if (actionName)
[undoManager setActionName:actionName];
}
diff --git a/WebKit2/UIProcess/API/qt/qwkpage.cpp b/WebKit2/UIProcess/API/qt/qwkpage.cpp
index 644ff1f..6188266 100644
--- a/WebKit2/UIProcess/API/qt/qwkpage.cpp
+++ b/WebKit2/UIProcess/API/qt/qwkpage.cpp
@@ -83,7 +83,7 @@ void QWKPagePrivate::toolTipChanged(const String&, const String& newTooltip)
emit q->statusBarMessage(QString(newTooltip));
}
-void QWKPagePrivate::registerEditCommand(PassRefPtr<WebEditCommandProxy>, UndoOrRedo)
+void QWKPagePrivate::registerEditCommand(PassRefPtr<WebEditCommandProxy>, WebPageProxy::UndoOrRedo)
{
}
diff --git a/WebKit2/UIProcess/API/qt/qwkpage_p.h b/WebKit2/UIProcess/API/qt/qwkpage_p.h
index ad9f13b..9ed5867 100644
--- a/WebKit2/UIProcess/API/qt/qwkpage_p.h
+++ b/WebKit2/UIProcess/API/qt/qwkpage_p.h
@@ -53,7 +53,7 @@ public:
virtual void setCursor(const WebCore::Cursor&);
virtual void takeFocus(bool direction) { }
virtual void toolTipChanged(const WTF::String&, const WTF::String&);
- virtual void registerEditCommand(PassRefPtr<WebKit::WebEditCommandProxy>, UndoOrRedo);
+ virtual void registerEditCommand(PassRefPtr<WebKit::WebEditCommandProxy>, WebPageProxy::UndoOrRedo);
virtual void clearAllEditCommands();
void paint(QPainter* painter, QRect);
diff --git a/WebKit2/UIProcess/PageClient.h b/WebKit2/UIProcess/PageClient.h
index efa5718..9099446 100644
--- a/WebKit2/UIProcess/PageClient.h
+++ b/WebKit2/UIProcess/PageClient.h
@@ -26,6 +26,7 @@
#ifndef PageClient_h
#define PageClient_h
+#include "WebPageProxy.h"
#include <wtf/Forward.h>
namespace WebCore {
@@ -48,8 +49,7 @@ public:
virtual void setCursor(const WebCore::Cursor&) = 0;
- enum UndoOrRedo { Undo, Redo };
- virtual void registerEditCommand(PassRefPtr<WebEditCommandProxy>, UndoOrRedo) = 0;
+ virtual void registerEditCommand(PassRefPtr<WebEditCommandProxy>, WebPageProxy::UndoOrRedo) = 0;
virtual void clearAllEditCommands() = 0;
virtual void setEditCommandState(const String& commandName, bool isEnabled, int state) = 0;
diff --git a/WebKit2/UIProcess/WebEditCommandProxy.cpp b/WebKit2/UIProcess/WebEditCommandProxy.cpp
index 70b7d19..9a816e3 100644
--- a/WebKit2/UIProcess/WebEditCommandProxy.cpp
+++ b/WebKit2/UIProcess/WebEditCommandProxy.cpp
@@ -53,7 +53,7 @@ void WebEditCommandProxy::unapply()
return;
m_page->process()->send(Messages::WebPage::UnapplyEditCommand(m_commandID), m_page->pageID());
- m_page->registerEditCommandForRedo(this);
+ m_page->registerEditCommand(this, WebPageProxy::Undo);
}
void WebEditCommandProxy::reapply()
@@ -62,7 +62,7 @@ void WebEditCommandProxy::reapply()
return;
m_page->process()->send(Messages::WebPage::ReapplyEditCommand(m_commandID), m_page->pageID());
- m_page->registerEditCommandForUndo(this);
+ m_page->registerEditCommand(this, WebPageProxy::Redo);
}
} // namespace WebKit
diff --git a/WebKit2/UIProcess/WebFormClient.cpp b/WebKit2/UIProcess/WebFormClient.cpp
index 523887c..4e657be 100644
--- a/WebKit2/UIProcess/WebFormClient.cpp
+++ b/WebKit2/UIProcess/WebFormClient.cpp
@@ -45,7 +45,7 @@ void WebFormClient::initialize(const WKPageFormClient* client)
memset(&m_pageFormClient, 0, sizeof(m_pageFormClient));
}
-bool WebFormClient::willSubmitForm(WebPageProxy* page, WebFrameProxy* frame, WebFrameProxy* sourceFrame, Vector<std::pair<String, String> >& textFieldValues, APIObject* userData, WebFormSubmissionListenerProxy* listener)
+bool WebFormClient::willSubmitForm(WebPageProxy* page, WebFrameProxy* frame, WebFrameProxy* sourceFrame, const Vector<std::pair<String, String> >& textFieldValues, APIObject* userData, WebFormSubmissionListenerProxy* listener)
{
if (!m_pageFormClient.willSubmitForm)
return false;
diff --git a/WebKit2/UIProcess/WebFormClient.h b/WebKit2/UIProcess/WebFormClient.h
index 1f074a6..b8314e6 100644
--- a/WebKit2/UIProcess/WebFormClient.h
+++ b/WebKit2/UIProcess/WebFormClient.h
@@ -43,7 +43,7 @@ public:
WebFormClient();
void initialize(const WKPageFormClient*);
- bool willSubmitForm(WebPageProxy*, WebFrameProxy*, WebFrameProxy*, Vector<std::pair<String, String> >& textFieldValues, APIObject* userData, WebFormSubmissionListenerProxy*);
+ bool willSubmitForm(WebPageProxy*, WebFrameProxy*, WebFrameProxy*, const Vector<std::pair<String, String> >& textFieldValues, APIObject* userData, WebFormSubmissionListenerProxy*);
private:
WKPageFormClient m_pageFormClient;
diff --git a/WebKit2/UIProcess/WebPageProxy.cpp b/WebKit2/UIProcess/WebPageProxy.cpp
index b2521e7..264eaa6 100644
--- a/WebKit2/UIProcess/WebPageProxy.cpp
+++ b/WebKit2/UIProcess/WebPageProxy.cpp
@@ -29,6 +29,7 @@
#include "MessageID.h"
#include "NativeWebKeyboardEvent.h"
#include "PageClient.h"
+#include "StringPairVector.h"
#include "WebBackForwardList.h"
#include "WebBackForwardListItem.h"
#include "WebCertificateInfo.h"
@@ -43,7 +44,6 @@
#include "WebPageCreationParameters.h"
#include "WebPageMessages.h"
#include "WebPageNamespace.h"
-#include "WebPageProxyMessageKinds.h"
#include "WebPreferences.h"
#include "WebProcessManager.h"
#include "WebProcessMessages.h"
@@ -540,349 +540,8 @@ void WebPageProxy::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::M
return;
}
- switch (messageID.get<WebPageProxyMessage::Kind>()) {
- case WebPageProxyMessage::DidCreateMainFrame: {
- uint64_t frameID;
- if (!arguments->decode(frameID))
- return;
- didCreateMainFrame(frameID);
- break;
- }
- case WebPageProxyMessage::DidCreateSubFrame: {
- uint64_t frameID;
- if (!arguments->decode(frameID))
- return;
- didCreateSubFrame(frameID);
- break;
- }
- case WebPageProxyMessage::DidStartProvisionalLoadForFrame: {
- uint64_t frameID;
- String url;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, url, messageDecoder)))
- return;
-
- didStartProvisionalLoadForFrame(process()->webFrame(frameID), url, userData.get());
- break;
- }
- case WebPageProxyMessage::DidReceiveServerRedirectForProvisionalLoadForFrame: {
- uint64_t frameID;
- String url;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, url, messageDecoder)))
- return;
-
- didReceiveServerRedirectForProvisionalLoadForFrame(process()->webFrame(frameID), url, userData.get());
- break;
- }
- case WebPageProxyMessage::DidFailProvisionalLoadForFrame: {
- uint64_t frameID;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, messageDecoder)))
- return;
-
- didFailProvisionalLoadForFrame(process()->webFrame(frameID), userData.get());
- break;
- }
- case WebPageProxyMessage::DidCommitLoadForFrame: {
- uint64_t frameID;
- String mimeType;
- PlatformCertificateInfo certificateInfo;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, mimeType, certificateInfo, messageDecoder)))
- return;
-
- didCommitLoadForFrame(process()->webFrame(frameID), mimeType, certificateInfo, userData.get());
- break;
- }
- case WebPageProxyMessage::DidFinishDocumentLoadForFrame: {
- uint64_t frameID;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, messageDecoder)))
- return;
-
- didFinishDocumentLoadForFrame(process()->webFrame(frameID), userData.get());
- break;
- }
- case WebPageProxyMessage::DidFinishLoadForFrame: {
- uint64_t frameID;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, messageDecoder)))
- return;
-
- didFinishLoadForFrame(process()->webFrame(frameID), userData.get());
- break;
- }
- case WebPageProxyMessage::DidFailLoadForFrame: {
- uint64_t frameID;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, messageDecoder)))
- return;
-
- didFailLoadForFrame(process()->webFrame(frameID), userData.get());
- break;
- }
- case WebPageProxyMessage::DidReceiveTitleForFrame: {
- uint64_t frameID;
- String title;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, title, messageDecoder)))
- return;
-
- didReceiveTitleForFrame(process()->webFrame(frameID), title, userData.get());
- break;
- }
- case WebPageProxyMessage::DidFirstLayoutForFrame: {
- uint64_t frameID;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, messageDecoder)))
- return;
-
- didFirstLayoutForFrame(process()->webFrame(frameID), userData.get());
- break;
- }
- case WebPageProxyMessage::DidFirstVisuallyNonEmptyLayoutForFrame: {
- uint64_t frameID;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, messageDecoder)))
- return;
-
- didFirstVisuallyNonEmptyLayoutForFrame(process()->webFrame(frameID), userData.get());
- break;
- }
- case WebPageProxyMessage::DidRemoveFrameFromHierarchy: {
- uint64_t frameID;
+ didReceiveWebPageProxyMessage(connection, messageID, arguments);
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, messageDecoder)))
- return;
-
- didRemoveFrameFromHierarchy(process()->webFrame(frameID), userData.get());
- break;
- }
- case WebPageProxyMessage::DidStartProgress:
- didStartProgress();
- break;
- case WebPageProxyMessage::DidChangeProgress: {
- double value;
- if (!arguments->decode(value))
- return;
- didChangeProgress(value);
- break;
- }
- case WebPageProxyMessage::DidFinishProgress:
- didFinishProgress();
- break;
- case WebPageProxyMessage::DidReceiveEvent: {
- uint32_t type;
- bool handled;
- if (!arguments->decode(CoreIPC::Out(type, handled)))
- return;
- didReceiveEvent((WebEvent::Type)type, handled);
- break;
- }
- case WebPageProxyMessage::TakeFocus: {
- // FIXME: Use enum here.
- bool direction;
- if (!arguments->decode(direction))
- return;
- takeFocus(direction);
- break;
- }
- case WebPageProxyMessage::DecidePolicyForNavigationAction: {
- uint64_t frameID;
- uint32_t navigationType;
- uint32_t modifiers;
- int32_t mouseButton;
- String url;
- uint64_t listenerID;
- if (!arguments->decode(CoreIPC::Out(frameID, navigationType, modifiers, mouseButton, url, listenerID)))
- return;
- decidePolicyForNavigationAction(process()->webFrame(frameID), static_cast<NavigationType>(navigationType), static_cast<WebEvent::Modifiers>(modifiers), static_cast<WebMouseEvent::Button>(mouseButton), url, listenerID);
- break;
- }
- case WebPageProxyMessage::DecidePolicyForNewWindowAction: {
- uint64_t frameID;
- uint32_t navigationType;
- uint32_t modifiers;
- int32_t mouseButton;
- String url;
- uint64_t listenerID;
- if (!arguments->decode(CoreIPC::Out(frameID, navigationType, modifiers, mouseButton, url, listenerID)))
- return;
- decidePolicyForNewWindowAction(process()->webFrame(frameID), static_cast<NavigationType>(navigationType), static_cast<WebEvent::Modifiers>(modifiers), static_cast<WebMouseEvent::Button>(mouseButton), url, listenerID);
- break;
- }
- case WebPageProxyMessage::DecidePolicyForMIMEType: {
- uint64_t frameID;
- String MIMEType;
- String url;
- uint64_t listenerID;
- if (!arguments->decode(CoreIPC::Out(frameID, MIMEType, url, listenerID)))
- return;
- decidePolicyForMIMEType(process()->webFrame(frameID), MIMEType, url, listenerID);
- break;
- }
- case WebPageProxyMessage::WillSubmitForm: {
- uint64_t frameID;
- uint64_t sourceFrameID;
- Vector<std::pair<String, String> > textFieldValues;
- uint64_t listenerID;
-
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(frameID, sourceFrameID, textFieldValues, listenerID, messageDecoder)))
- return;
-
- willSubmitForm(process()->webFrame(frameID), process()->webFrame(sourceFrameID), textFieldValues, userData.get(), listenerID);
- break;
- }
- case WebPageProxyMessage::DidRunJavaScriptInMainFrame: {
- String resultString;
- uint64_t callbackID;
- if (!arguments->decode(CoreIPC::Out(resultString, callbackID)))
- return;
- didRunJavaScriptInMainFrame(resultString, callbackID);
- break;
- }
- case WebPageProxyMessage::DidGetRenderTreeExternalRepresentation: {
- String resultString;
- uint64_t callbackID;
- if (!arguments->decode(CoreIPC::Out(resultString, callbackID)))
- return;
- didGetRenderTreeExternalRepresentation(resultString, callbackID);
- break;
- }
- case WebPageProxyMessage::DidGetSourceForFrame: {
- String resultString;
- uint64_t callbackID;
- if (!arguments->decode(CoreIPC::Out(resultString, callbackID)))
- return;
- didGetSourceForFrame(resultString, callbackID);
- break;
- }
- case WebPageProxyMessage::SetToolTip: {
- String toolTip;
- if (!arguments->decode(toolTip))
- return;
- setToolTip(toolTip);
- break;
- }
- case WebPageProxyMessage::SetCursor: {
-#if USE(LAZY_NATIVE_CURSOR)
- Cursor cursor;
- if (!arguments->decode(cursor))
- return;
- setCursor(cursor);
-#endif
- break;
- }
- case WebPageProxyMessage::ShowPage: {
- showPage();
- break;
- }
- case WebPageProxyMessage::ClosePage: {
- closePage();
- break;
- }
- case WebPageProxyMessage::BackForwardAddItem: {
- uint64_t itemID;
- if (!arguments->decode(CoreIPC::Out(itemID)))
- return;
- addItemToBackForwardList(process()->webBackForwardItem(itemID));
- break;
- }
- case WebPageProxyMessage::BackForwardGoToItem: {
- uint64_t itemID;
- if (!arguments->decode(CoreIPC::Out(itemID)))
- return;
- goToItemInBackForwardList(process()->webBackForwardItem(itemID));
- break;
- }
- case WebPageProxyMessage::ContentsSizeChanged: {
- IntSize size;
- uint64_t frameID;
- if (!arguments->decode(CoreIPC::Out(frameID, size)))
- return;
- contentsSizeChanged(process()->webFrame(frameID), size);
- break;
- }
- case WebPageProxyMessage::SetStatusText: {
- String text;
- if (!arguments->decode(CoreIPC::Out(text)))
- return;
- setStatusText(text);
- break;
- }
- case WebPageProxyMessage::RegisterEditCommandForUndo: {
- uint64_t commandID;
- uint32_t editAction;
- if (!arguments->decode(CoreIPC::Out(commandID, editAction)))
- return;
-
- registerEditCommandForUndo(commandID, static_cast<EditAction>(editAction));
- break;
- }
- case WebPageProxyMessage::ClearAllEditCommands:
- clearAllEditCommands();
- break;
- case WebPageProxyMessage::DidValidateMenuItem: {
- int state;
- bool isEnabled;
- String commandName;
- if (!arguments->decode(CoreIPC::Out(commandName, isEnabled, state)))
- return;
- m_pageClient->setEditCommandState(commandName, isEnabled, state);
- break;
- }
- case WebPageProxyMessage::MouseDidMoveOverElement: {
- uint32_t modifiers;
- RefPtr<APIObject> userData;
- WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
-
- if (!arguments->decode(CoreIPC::Out(modifiers, messageDecoder)))
- return;
-
- mouseDidMoveOverElement(static_cast<WebEvent::Modifiers>(modifiers), userData.get());
- break;
- }
- default:
- ASSERT_NOT_REACHED();
- break;
- }
}
void WebPageProxy::didReceiveSyncMessage(CoreIPC::Connection* connection, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder* arguments, CoreIPC::ArgumentEncoder* reply)
@@ -892,105 +551,8 @@ void WebPageProxy::didReceiveSyncMessage(CoreIPC::Connection* connection, CoreIP
return;
}
- switch (messageID.get<WebPageProxyMessage::Kind>()) {
- case WebPageProxyMessage::CreateNewPage: {
- RefPtr<WebPageProxy> newPage = createNewPage();
- WebPageCreationParameters parameters;
- if (newPage) {
- // FIXME: Pass the real size.
- parameters = newPage->creationParameters(IntSize(100, 100));
- reply->encode(CoreIPC::In(newPage->pageID(), parameters));
- } else {
- reply->encode(CoreIPC::In(static_cast<uint64_t>(0), parameters));
- }
- break;
- }
- case WebPageProxyMessage::RunJavaScriptAlert: {
- uint64_t frameID;
- String message;
- if (!arguments->decode(CoreIPC::Out(frameID, message)))
- return;
- runJavaScriptAlert(process()->webFrame(frameID), message);
- break;
- }
- case WebPageProxyMessage::RunJavaScriptConfirm: {
- // FIXME: We should probably encode something in the case that the arguments do not decode correctly.
- uint64_t frameID;
- String message;
- if (!arguments->decode(CoreIPC::Out(frameID, message)))
- return;
-
- bool result = runJavaScriptConfirm(process()->webFrame(frameID), message);
- reply->encode(CoreIPC::In(result));
- break;
- }
- case WebPageProxyMessage::RunJavaScriptPrompt: {
- // FIXME: We should probably encode something in the case that the arguments do not decode correctly.
- uint64_t frameID;
- String message;
- String defaultValue;
- if (!arguments->decode(CoreIPC::Out(frameID, message, defaultValue)))
- return;
-
- String result = runJavaScriptPrompt(process()->webFrame(frameID), message, defaultValue);
- reply->encode(CoreIPC::In(result));
- break;
- }
-
- case WebPageProxyMessage::BackForwardBackItem: {
- WebBackForwardListItem* backItem = m_backForwardList->backItem();
- uint64_t backItemID = backItem ? backItem->itemID() : 0;
- reply->encode(CoreIPC::In(backItemID));
- break;
- }
- case WebPageProxyMessage::BackForwardCurrentItem: {
- WebBackForwardListItem* currentItem = m_backForwardList->currentItem();
- uint64_t currentItemID = currentItem ? currentItem->itemID() : 0;
- reply->encode(CoreIPC::In(currentItemID));
- break;
- }
- case WebPageProxyMessage::BackForwardForwardItem: {
- WebBackForwardListItem* forwardItem = m_backForwardList->forwardItem();
- uint64_t forwardItemID = forwardItem ? forwardItem->itemID() : 0;
- reply->encode(CoreIPC::In(forwardItemID));
- break;
- }
- case WebPageProxyMessage::BackForwardItemAtIndex: {
- int itemIndex;
- if (!arguments->decode(CoreIPC::Out(itemIndex)))
- return;
-
- WebBackForwardListItem* item = m_backForwardList->itemAtIndex(itemIndex);
- uint64_t itemID = item ? item->itemID() : 0;
- reply->encode(CoreIPC::In(itemID));
- break;
- }
- case WebPageProxyMessage::BackForwardBackListCount: {
- int backListCount = m_backForwardList->backListCount();
- reply->encode(CoreIPC::In(backListCount));
- break;
- }
- case WebPageProxyMessage::BackForwardForwardListCount: {
- int forwardListCount = m_backForwardList->forwardListCount();
- reply->encode(CoreIPC::In(forwardListCount));
- break;
- }
-#if USE(ACCELERATED_COMPOSITING)
- case WebPageProxyMessage::DidChangeAcceleratedCompositing: {
- bool compositing;
- if (!arguments->decode(CoreIPC::Out(compositing)))
- return;
-
- didChangeAcceleratedCompositing(compositing);
- reply->encode(drawingArea()->info());
- break;
- }
-#endif // USE(ACCELERATED_COMPOSITING)
-
- default:
- ASSERT_NOT_REACHED();
- break;
- }
+ // FIXME: Do something with reply.
+ didReceiveSyncWebPageProxyMessage(connection, messageID, arguments, reply);
}
void WebPageProxy::didCreateMainFrame(uint64_t frameID)
@@ -1028,91 +590,179 @@ void WebPageProxy::didFinishProgress()
m_loaderClient.didFinishProgress(this);
}
-void WebPageProxy::didStartProvisionalLoadForFrame(WebFrameProxy* frame, const String& url, APIObject* userData)
+void WebPageProxy::didStartProvisionalLoadForFrame(uint64_t frameID, const String& url, CoreIPC::ArgumentDecoder* arguments)
{
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
frame->didStartProvisionalLoad(url);
- m_loaderClient.didStartProvisionalLoadForFrame(this, frame, userData);
+ m_loaderClient.didStartProvisionalLoadForFrame(this, frame, userData.get());
}
-void WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame(WebFrameProxy* frame, const String& url, APIObject* userData)
+void WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame(uint64_t frameID, const String& url, CoreIPC::ArgumentDecoder* arguments)
{
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
frame->didReceiveServerRedirectForProvisionalLoad(url);
- m_loaderClient.didReceiveServerRedirectForProvisionalLoadForFrame(this, frame, userData);
+ m_loaderClient.didReceiveServerRedirectForProvisionalLoadForFrame(this, frame, userData.get());
}
-void WebPageProxy::didFailProvisionalLoadForFrame(WebFrameProxy* frame, APIObject* userData)
+void WebPageProxy::didFailProvisionalLoadForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder* arguments)
{
- m_loaderClient.didFailProvisionalLoadWithErrorForFrame(this, frame, userData);
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
+ m_loaderClient.didFailProvisionalLoadWithErrorForFrame(this, frame, userData.get());
}
-void WebPageProxy::didCommitLoadForFrame(WebFrameProxy* frame, const String& mimeType, const PlatformCertificateInfo& certificateInfo, APIObject* userData)
+void WebPageProxy::didCommitLoadForFrame(uint64_t frameID, const String& mimeType, const PlatformCertificateInfo& certificateInfo, CoreIPC::ArgumentDecoder* arguments)
{
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
frame->setMIMEType(mimeType);
frame->setCertificateInfo(WebCertificateInfo::create(certificateInfo));
frame->didCommitLoad();
- m_loaderClient.didCommitLoadForFrame(this, frame, userData);
+ m_loaderClient.didCommitLoadForFrame(this, frame, userData.get());
}
-void WebPageProxy::didFinishDocumentLoadForFrame(WebFrameProxy* frame, APIObject* userData)
+void WebPageProxy::didFinishDocumentLoadForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder* arguments)
{
- m_loaderClient.didFinishDocumentLoadForFrame(this, frame, userData);
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
+ m_loaderClient.didFinishDocumentLoadForFrame(this, frame, userData.get());
}
-void WebPageProxy::didFinishLoadForFrame(WebFrameProxy* frame, APIObject* userData)
+void WebPageProxy::didFinishLoadForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder* arguments)
{
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
frame->didFinishLoad();
- m_loaderClient.didFinishLoadForFrame(this, frame, userData);
+ m_loaderClient.didFinishLoadForFrame(this, frame, userData.get());
}
-void WebPageProxy::didFailLoadForFrame(WebFrameProxy* frame, APIObject* userData)
+void WebPageProxy::didFailLoadForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder* arguments)
{
- m_loaderClient.didFailLoadWithErrorForFrame(this, frame, userData);
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
+ m_loaderClient.didFailLoadWithErrorForFrame(this, frame, userData.get());
}
-void WebPageProxy::didReceiveTitleForFrame(WebFrameProxy* frame, const String& title, APIObject* userData)
+void WebPageProxy::didReceiveTitleForFrame(uint64_t frameID, const String& title, CoreIPC::ArgumentDecoder* arguments)
{
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
frame->didReceiveTitle(title);
// Cache the title for the main frame in the page.
if (frame == m_mainFrame)
m_pageTitle = title;
- m_loaderClient.didReceiveTitleForFrame(this, title, frame, userData);
+ m_loaderClient.didReceiveTitleForFrame(this, title, frame, userData.get());
}
-void WebPageProxy::didFirstLayoutForFrame(WebFrameProxy* frame, APIObject* userData)
+void WebPageProxy::didFirstLayoutForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder* arguments)
{
- m_loaderClient.didFirstLayoutForFrame(this, frame, userData);
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
+ m_loaderClient.didFirstLayoutForFrame(this, frame, userData.get());
}
-void WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame(WebFrameProxy* frame, APIObject* userData)
+void WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder* arguments)
{
- m_loaderClient.didFirstVisuallyNonEmptyLayoutForFrame(this, frame, userData);
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
+ m_loaderClient.didFirstVisuallyNonEmptyLayoutForFrame(this, frame, userData.get());
}
-void WebPageProxy::didRemoveFrameFromHierarchy(WebFrameProxy* frame, APIObject* userData)
+void WebPageProxy::didRemoveFrameFromHierarchy(uint64_t frameID, CoreIPC::ArgumentDecoder* arguments)
{
- m_loaderClient.didRemoveFrameFromHierarchy(this, frame, userData);
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+
+ m_loaderClient.didRemoveFrameFromHierarchy(this, frame, userData.get());
}
// PolicyClient
-void WebPageProxy::decidePolicyForNavigationAction(WebFrameProxy* frame, NavigationType navigationType, WebEvent::Modifiers modifiers, WebMouseEvent::Button mouseButton, const String& url, uint64_t listenerID)
+void WebPageProxy::decidePolicyForNavigationAction(uint64_t frameID, uint32_t opaqueNavigationType, uint32_t opaqueModifiers, int32_t opaqueMouseButton, const String& url, uint64_t listenerID)
{
+ WebFrameProxy* frame = process()->webFrame(frameID);
+ NavigationType navigationType = static_cast<NavigationType>(opaqueNavigationType);
+ WebEvent::Modifiers modifiers = static_cast<WebEvent::Modifiers>(opaqueModifiers);
+ WebMouseEvent::Button mouseButton = static_cast<WebMouseEvent::Button>(opaqueMouseButton);
+
RefPtr<WebFramePolicyListenerProxy> listener = frame->setUpPolicyListenerProxy(listenerID);
if (!m_policyClient.decidePolicyForNavigationAction(this, navigationType, modifiers, mouseButton, url, frame, listener.get()))
listener->use();
}
-void WebPageProxy::decidePolicyForNewWindowAction(WebFrameProxy* frame, NavigationType navigationType, WebEvent::Modifiers modifiers, WebMouseEvent::Button mouseButton, const String& url, uint64_t listenerID)
+void WebPageProxy::decidePolicyForNewWindowAction(uint64_t frameID, uint32_t opaqueNavigationType, uint32_t opaqueModifiers, int32_t opaqueMouseButton, const String& url, uint64_t listenerID)
{
+ WebFrameProxy* frame = process()->webFrame(frameID);
+ NavigationType navigationType = static_cast<NavigationType>(opaqueNavigationType);
+ WebEvent::Modifiers modifiers = static_cast<WebEvent::Modifiers>(opaqueModifiers);
+ WebMouseEvent::Button mouseButton = static_cast<WebMouseEvent::Button>(opaqueMouseButton);
+
RefPtr<WebFramePolicyListenerProxy> listener = frame->setUpPolicyListenerProxy(listenerID);
if (!m_policyClient.decidePolicyForNewWindowAction(this, navigationType, modifiers, mouseButton, url, frame, listener.get()))
listener->use();
}
-void WebPageProxy::decidePolicyForMIMEType(WebFrameProxy* frame, const String& MIMEType, const String& url, uint64_t listenerID)
+void WebPageProxy::decidePolicyForMIMEType(uint64_t frameID, const String& MIMEType, const String& url, uint64_t listenerID)
{
+ WebFrameProxy* frame = process()->webFrame(frameID);
RefPtr<WebFramePolicyListenerProxy> listener = frame->setUpPolicyListenerProxy(listenerID);
if (!m_policyClient.decidePolicyForMIMEType(this, MIMEType, url, frame, listener.get()))
listener->use();
@@ -1120,18 +770,32 @@ void WebPageProxy::decidePolicyForMIMEType(WebFrameProxy* frame, const String& M
// FormClient
-void WebPageProxy::willSubmitForm(WebFrameProxy* frame, WebFrameProxy* sourceFrame, Vector<std::pair<String, String> >& textFieldValues, APIObject* userData, uint64_t listenerID)
+void WebPageProxy::willSubmitForm(uint64_t frameID, uint64_t sourceFrameID, const StringPairVector& textFieldValues, uint64_t listenerID, CoreIPC::ArgumentDecoder* arguments)
{
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebFrameProxy* frame = process()->webFrame(frameID);
+ WebFrameProxy* sourceFrame = process()->webFrame(sourceFrameID);
+
RefPtr<WebFormSubmissionListenerProxy> listener = frame->setUpFormSubmissionListenerProxy(listenerID);
- if (!m_formClient.willSubmitForm(this, frame, sourceFrame, textFieldValues, userData, listener.get()))
+ if (!m_formClient.willSubmitForm(this, frame, sourceFrame, textFieldValues.stringPairVector(), userData.get(), listener.get()))
listener->continueSubmission();
}
// UIClient
-PassRefPtr<WebPageProxy> WebPageProxy::createNewPage()
+void WebPageProxy::createNewPage(uint64_t& newPageID, WebPageCreationParameters& newPageParameters)
{
- return m_uiClient.createNewPage(this);
+ RefPtr<WebPageProxy> newPage = m_uiClient.createNewPage(this);
+ if (newPage) {
+ // FIXME: Pass the real size.
+ newPageID = newPage->pageID();
+ newPageParameters = newPage->creationParameters(IntSize(100, 100));
+ } else
+ newPageID = 0;
}
void WebPageProxy::showPage()
@@ -1144,19 +808,19 @@ void WebPageProxy::closePage()
m_uiClient.close(this);
}
-void WebPageProxy::runJavaScriptAlert(WebFrameProxy* frame, const String& message)
+void WebPageProxy::runJavaScriptAlert(uint64_t frameID, const String& message)
{
- m_uiClient.runJavaScriptAlert(this, message, frame);
+ m_uiClient.runJavaScriptAlert(this, message, process()->webFrame(frameID));
}
-bool WebPageProxy::runJavaScriptConfirm(WebFrameProxy* frame, const String& message)
+void WebPageProxy::runJavaScriptConfirm(uint64_t frameID, const String& message, bool& result)
{
- return m_uiClient.runJavaScriptConfirm(this, message, frame);
+ result = m_uiClient.runJavaScriptConfirm(this, message, process()->webFrame(frameID));
}
-String WebPageProxy::runJavaScriptPrompt(WebFrameProxy* frame, const String& message, const String& defaultValue)
+void WebPageProxy::runJavaScriptPrompt(uint64_t frameID, const String& message, const String& defaultValue, String& result)
{
- return m_uiClient.runJavaScriptPrompt(this, message, defaultValue, frame);
+ result = m_uiClient.runJavaScriptPrompt(this, message, defaultValue, process()->webFrame(frameID));
}
void WebPageProxy::setStatusText(const String& text)
@@ -1164,48 +828,85 @@ void WebPageProxy::setStatusText(const String& text)
m_uiClient.setStatusText(this, text);
}
-void WebPageProxy::mouseDidMoveOverElement(WebEvent::Modifiers modifiers, APIObject* userData)
+void WebPageProxy::mouseDidMoveOverElement(uint32_t opaqueModifiers, CoreIPC::ArgumentDecoder* arguments)
{
- m_uiClient.mouseDidMoveOverElement(this, modifiers, userData);
+
+ RefPtr<APIObject> userData;
+ WebContextUserMessageDecoder messageDecoder(userData, pageNamespace()->context());
+ if (!arguments->decode(messageDecoder))
+ return;
+
+ WebEvent::Modifiers modifiers = static_cast<WebEvent::Modifiers>(opaqueModifiers);
+
+ m_uiClient.mouseDidMoveOverElement(this, modifiers, userData.get());
}
-void WebPageProxy::contentsSizeChanged(WebFrameProxy* frame, const WebCore::IntSize& size)
+void WebPageProxy::contentsSizeChanged(uint64_t frameID, const WebCore::IntSize& size)
{
- m_uiClient.contentsSizeChanged(this, size, frame);
+ m_uiClient.contentsSizeChanged(this, size, process()->webFrame(frameID));
}
// BackForwardList
-void WebPageProxy::addItemToBackForwardList(WebBackForwardListItem* item)
+void WebPageProxy::backForwardAddItem(uint64_t itemID)
{
- m_backForwardList->addItem(item);
+ m_backForwardList->addItem(process()->webBackForwardItem(itemID));
}
-void WebPageProxy::goToItemInBackForwardList(WebBackForwardListItem* item)
+void WebPageProxy::backForwardGoToItem(uint64_t itemID)
{
- m_backForwardList->goToItem(item);
+ m_backForwardList->goToItem(process()->webBackForwardItem(itemID));
}
-// Undo management
+void WebPageProxy::backForwardBackItem(uint64_t& itemID)
+{
+ WebBackForwardListItem* backItem = m_backForwardList->backItem();
+ itemID = backItem ? backItem->itemID() : 0;
+}
-void WebPageProxy::registerEditCommandForUndo(uint64_t commandID, EditAction editAction)
+void WebPageProxy::backForwardCurrentItem(uint64_t& itemID)
{
- registerEditCommandForUndo(WebEditCommandProxy::create(commandID, editAction, this));
+ WebBackForwardListItem* currentItem = m_backForwardList->currentItem();
+ itemID = currentItem ? currentItem->itemID() : 0;
}
-void WebPageProxy::clearAllEditCommands()
+void WebPageProxy::backForwardForwardItem(uint64_t& itemID)
{
- m_pageClient->clearAllEditCommands();
+ WebBackForwardListItem* forwardItem = m_backForwardList->forwardItem();
+ itemID = forwardItem ? forwardItem->itemID() : 0;
+}
+
+void WebPageProxy::backForwardItemAtIndex(int32_t index, uint64_t& itemID)
+{
+ WebBackForwardListItem* item = m_backForwardList->itemAtIndex(index);;
+ itemID = item ? item->itemID() : 0;
+}
+
+void WebPageProxy::backForwardBackListCount(int32_t& count)
+{
+ count = m_backForwardList->backListCount();
+}
+
+void WebPageProxy::backForwardForwardListCount(int32_t& count)
+{
+ count = m_backForwardList->forwardListCount();
+}
+
+// Undo management
+
+void WebPageProxy::registerEditCommandForUndo(uint64_t commandID, uint32_t editAction)
+{
+ registerEditCommand(WebEditCommandProxy::create(commandID, static_cast<EditAction>(editAction), this), Undo);
}
-void WebPageProxy::registerEditCommandForUndo(PassRefPtr<WebEditCommandProxy> commandProxy)
+void WebPageProxy::clearAllEditCommands()
{
- m_pageClient->registerEditCommand(commandProxy, PageClient::Undo);
+ m_pageClient->clearAllEditCommands();
}
-void WebPageProxy::registerEditCommandForRedo(PassRefPtr<WebEditCommandProxy> commandProxy)
+void WebPageProxy::registerEditCommand(PassRefPtr<WebEditCommandProxy> commandProxy, UndoOrRedo undoOrRedo)
{
- m_pageClient->registerEditCommand(commandProxy, PageClient::Redo);
+ m_pageClient->registerEditCommand(commandProxy, undoOrRedo);
}
void WebPageProxy::addEditCommand(WebEditCommandProxy* command)
@@ -1241,8 +942,15 @@ void WebPageProxy::setCursor(const WebCore::Cursor& cursor)
m_pageClient->setCursor(cursor);
}
-void WebPageProxy::didReceiveEvent(WebEvent::Type type, bool handled)
+void WebPageProxy::didValidateMenuItem(const String& commandName, bool isEnabled, int32_t state)
+{
+ m_pageClient->setEditCommandState(commandName, isEnabled, state);
+}
+
+void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled)
{
+ WebEvent::Type type = static_cast<WebEvent::Type>(opaqueType);
+
switch (type) {
case WebEvent::MouseMove:
break;
@@ -1304,13 +1012,16 @@ void WebPageProxy::didGetSourceForFrame(const String& resultString, uint64_t cal
callback->performCallbackWithReturnValue(resultString.impl());
}
+
#if USE(ACCELERATED_COMPOSITING)
-void WebPageProxy::didChangeAcceleratedCompositing(bool compositing)
+void WebPageProxy::didChangeAcceleratedCompositing(bool compositing, DrawingAreaBase::DrawingAreaInfo& drawingAreaInfo)
{
if (compositing)
didEnterAcceleratedCompositing();
else
didLeaveAcceleratedCompositing();
+
+ drawingAreaInfo = drawingArea()->info();
}
#endif
diff --git a/WebKit2/UIProcess/WebPageProxy.h b/WebKit2/UIProcess/WebPageProxy.h
index 79203c9..41b5a2f 100644
--- a/WebKit2/UIProcess/WebPageProxy.h
+++ b/WebKit2/UIProcess/WebPageProxy.h
@@ -66,6 +66,7 @@ class DrawingAreaProxy;
class NativeWebKeyboardEvent;
class PageClient;
class PlatformCertificateInfo;
+class StringPairVector;
class WebBackForwardList;
class WebBackForwardListItem;
class WebData;
@@ -188,10 +189,10 @@ public:
void didLeaveAcceleratedCompositing();
#endif
+ enum UndoOrRedo { Undo, Redo };
void addEditCommand(WebEditCommandProxy*);
void removeEditCommand(WebEditCommandProxy*);
- void registerEditCommandForUndo(PassRefPtr<WebEditCommandProxy>);
- void registerEditCommandForRedo(PassRefPtr<WebEditCommandProxy>);
+ void registerEditCommand(PassRefPtr<WebEditCommandProxy>, UndoOrRedo);
WebProcessProxy* process() const;
WebPageNamespace* pageNamespace() const { return m_pageNamespace.get(); }
@@ -210,53 +211,64 @@ private:
virtual Type type() const { return APIType; }
+ // Implemented in generated WebPageProxyMessageReceiver.cpp
+ void didReceiveWebPageProxyMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*);
+ CoreIPC::SyncReplyMode didReceiveSyncWebPageProxyMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*, CoreIPC::ArgumentEncoder*);
+
void didCreateMainFrame(uint64_t frameID);
void didCreateSubFrame(uint64_t frameID);
- void didStartProvisionalLoadForFrame(WebFrameProxy*, const String&, APIObject*);
- void didReceiveServerRedirectForProvisionalLoadForFrame(WebFrameProxy*, const String&, APIObject*);
- void didFailProvisionalLoadForFrame(WebFrameProxy*, APIObject*);
- void didCommitLoadForFrame(WebFrameProxy*, const String& mimeType, const PlatformCertificateInfo&, APIObject*);
- void didFinishDocumentLoadForFrame(WebFrameProxy*, APIObject*);
- void didFinishLoadForFrame(WebFrameProxy*, APIObject*);
- void didFailLoadForFrame(WebFrameProxy*, APIObject*);
- void didReceiveTitleForFrame(WebFrameProxy*, const String&, APIObject*);
- void didFirstLayoutForFrame(WebFrameProxy*, APIObject*);
- void didFirstVisuallyNonEmptyLayoutForFrame(WebFrameProxy*, APIObject*);
- void didRemoveFrameFromHierarchy(WebFrameProxy*, APIObject*);
+ void didStartProvisionalLoadForFrame(uint64_t frameID, const String&, CoreIPC::ArgumentDecoder*);
+ void didReceiveServerRedirectForProvisionalLoadForFrame(uint64_t frameID, const String&, CoreIPC::ArgumentDecoder*);
+ void didFailProvisionalLoadForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder*);
+ void didCommitLoadForFrame(uint64_t frameID, const String& mimeType, const PlatformCertificateInfo&, CoreIPC::ArgumentDecoder*);
+ void didFinishDocumentLoadForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder*);
+ void didFinishLoadForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder*);
+ void didFailLoadForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder*);
+ void didReceiveTitleForFrame(uint64_t frameID, const String&, CoreIPC::ArgumentDecoder*);
+ void didFirstLayoutForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder*);
+ void didFirstVisuallyNonEmptyLayoutForFrame(uint64_t frameID, CoreIPC::ArgumentDecoder*);
+ void didRemoveFrameFromHierarchy(uint64_t frameID, CoreIPC::ArgumentDecoder*);
void didStartProgress();
void didChangeProgress(double);
void didFinishProgress();
- void decidePolicyForNavigationAction(WebFrameProxy*, WebCore::NavigationType, WebEvent::Modifiers, WebMouseEvent::Button, const String& url, uint64_t listenerID);
- void decidePolicyForNewWindowAction(WebFrameProxy*, WebCore::NavigationType, WebEvent::Modifiers, WebMouseEvent::Button, const String& url, uint64_t listenerID);
- void decidePolicyForMIMEType(WebFrameProxy*, const String& MIMEType, const String& url, uint64_t listenerID);
+ void decidePolicyForNavigationAction(uint64_t frameID, uint32_t navigationType, uint32_t modifiers, int32_t mouseButton, const String& url, uint64_t listenerID);
+ void decidePolicyForNewWindowAction(uint64_t frameID, uint32_t navigationType, uint32_t modifiers, int32_t mouseButton, const String& url, uint64_t listenerID);
+ void decidePolicyForMIMEType(uint64_t frameID, const String& MIMEType, const String& url, uint64_t listenerID);
- void willSubmitForm(WebFrameProxy* frame, WebFrameProxy* frameSource, Vector<std::pair<String, String> >& textFieldValues, APIObject* userData, uint64_t listenerID);
+ void willSubmitForm(uint64_t frameID, uint64_t sourceFrameID, const StringPairVector& textFieldValues, uint64_t listenerID, CoreIPC::ArgumentDecoder*);
- PassRefPtr<WebPageProxy> createNewPage();
+ void createNewPage(uint64_t& newPageID, WebPageCreationParameters&);
void showPage();
void closePage();
- void runJavaScriptAlert(WebFrameProxy*, const String&);
- bool runJavaScriptConfirm(WebFrameProxy* frame, const String&);
- String runJavaScriptPrompt(WebFrameProxy* frame, const String&, const String&);
+ void runJavaScriptAlert(uint64_t frameID, const String&);
+ void runJavaScriptConfirm(uint64_t frameID, const String&, bool& result);
+ void runJavaScriptPrompt(uint64_t frameID, const String&, const String&, String& result);
void setStatusText(const String&);
- void mouseDidMoveOverElement(WebEvent::Modifiers, APIObject*);
- void contentsSizeChanged(WebFrameProxy*, const WebCore::IntSize&);
+ void mouseDidMoveOverElement(uint32_t modifiers, CoreIPC::ArgumentDecoder*);
+ void contentsSizeChanged(uint64_t frameID, const WebCore::IntSize&);
// Back/Forward list management
- void addItemToBackForwardList(WebBackForwardListItem*);
- void goToItemInBackForwardList(WebBackForwardListItem*);
+ void backForwardAddItem(uint64_t itemID);
+ void backForwardGoToItem(uint64_t itemID);
+ void backForwardBackItem(uint64_t& itemID);
+ void backForwardCurrentItem(uint64_t& itemID);
+ void backForwardForwardItem(uint64_t& itemID);
+ void backForwardItemAtIndex(int32_t index, uint64_t& itemID);
+ void backForwardBackListCount(int32_t& count);
+ void backForwardForwardListCount(int32_t& count);
// Undo management
- void registerEditCommandForUndo(uint64_t commandID, WebCore::EditAction);
+ void registerEditCommandForUndo(uint64_t commandID, uint32_t editAction);
void clearAllEditCommands();
void takeFocus(bool direction);
void setToolTip(const String&);
void setCursor(const WebCore::Cursor&);
+ void didValidateMenuItem(const String& commandName, bool isEnabled, int32_t state);
- void didReceiveEvent(WebEvent::Type, bool handled);
+ void didReceiveEvent(uint32_t opaqueType, bool handled);
void didRunJavaScriptInMainFrame(const String&, uint64_t);
void didGetRenderTreeExternalRepresentation(const String&, uint64_t);
@@ -265,7 +277,7 @@ private:
WebPageCreationParameters creationParameters(const WebCore::IntSize&) const;
#if USE(ACCELERATED_COMPOSITING)
- void didChangeAcceleratedCompositing(bool compositing);
+ void didChangeAcceleratedCompositing(bool compositing, DrawingAreaBase::DrawingAreaInfo&);
#endif
PageClient* m_pageClient;
diff --git a/WebKit2/UIProcess/WebPageProxy.messages.in b/WebKit2/UIProcess/WebPageProxy.messages.in
new file mode 100644
index 0000000..1849875
--- /dev/null
+++ b/WebKit2/UIProcess/WebPageProxy.messages.in
@@ -0,0 +1,93 @@
+# Copyright (C) 2010 Apple Inc. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND
+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR
+# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+messages -> WebPageProxy {
+ # UI messages.
+ CreateNewPage() -> (uint64_t newPageID, WebKit::WebPageCreationParameters newPageParameters)
+ ShowPage()
+ ClosePage()
+ RunJavaScriptAlert(uint64_t frameID, WTF::String message) -> ()
+ RunJavaScriptConfirm(uint64_t frameID, WTF::String message) -> (bool result)
+ RunJavaScriptPrompt(uint64_t frameID, WTF::String message, WTF::String defaultValue) -> (WTF::String result)
+ MouseDidMoveOverElement(uint32_t modifiers, WebKit::InjectedBundleUserMessageEncoder userData);
+ ContentsSizeChanged(uint64_t frameID, WebCore::IntSize newSize)
+ DidReceiveEvent(uint32_t type, bool handled)
+ DidValidateMenuItem(WTF::String commandName, bool isEnabled, int32_t state)
+ SetCursor(WebCore::Cursor cursor)
+ SetStatusText(WTF::String statusText)
+ SetToolTip(WTF::String toolTip)
+ TakeFocus(bool direction)
+
+ # Policy messages.
+ DecidePolicyForMIMEType(uint64_t frameID, WTF::String MIMEType, WTF::String url, uint64_t listenerID)
+ DecidePolicyForNavigationAction(uint64_t frameID, uint32_t navigationType, uint32_t modifiers, int32_t mouseButton, WTF::String url, uint64_t listenerID)
+ DecidePolicyForNewWindowAction(uint64_t frameID, uint32_t navigationType, uint32_t modifiers, int32_t mouseButton, WTF::String url, uint64_t listenerID)
+
+ # Progress messages.
+ DidChangeProgress(double value)
+ DidFinishProgress()
+ DidStartProgress()
+
+ # Frame lifetime messages.
+ DidCreateMainFrame(uint64_t frameID)
+ DidCreateSubFrame(uint64_t frameID)
+
+ # Frame load messages.
+ DidCommitLoadForFrame(uint64_t frameID, WTF::String mimeType, WebKit::PlatformCertificateInfo certificateInfo, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidFailLoadForFrame(uint64_t frameID, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidFailProvisionalLoadForFrame(uint64_t frameID, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidFinishDocumentLoadForFrame(uint64_t frameID, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidFinishLoadForFrame(uint64_t frameID, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidFirstLayoutForFrame(uint64_t frameID, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidFirstVisuallyNonEmptyLayoutForFrame(uint64_t frameID, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidReceiveServerRedirectForProvisionalLoadForFrame(uint64_t frameID, WTF::String url, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidRemoveFrameFromHierarchy(uint64_t frameID, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidStartProvisionalLoadForFrame(uint64_t frameID, WTF::String url, WebKit::InjectedBundleUserMessageEncoder userData)
+ DidReceiveTitleForFrame(uint64_t frameID, WTF::String title, WebKit::InjectedBundleUserMessageEncoder userData)
+
+ # Forms messages.
+ WillSubmitForm(uint64_t frameID, uint64_t sourceFrameID, WebKit::StringPairVector textFieldValues, uint64_t listenerID, WebKit::InjectedBundleUserMessageEncoder userData)
+
+ # Callback messages.
+ DidGetRenderTreeExternalRepresentation(WTF::String resultString, uint64_t callbackID)
+ DidGetSourceForFrame(WTF::String resultString, uint64_t callbackID)
+ DidRunJavaScriptInMainFrame(WTF::String resultString, uint64_t callbackID)
+
+ # BackForward messages.
+ BackForwardAddItem(uint64_t itemID)
+ BackForwardGoToItem(uint64_t itemID)
+ BackForwardBackItem() -> (uint64_t itemID)
+ BackForwardCurrentItem() -> (uint64_t itemID)
+ BackForwardForwardItem() -> (uint64_t itemID)
+ BackForwardItemAtIndex(uint64_t itemID) -> (uint64_t itemID)
+ BackForwardBackListCount() -> (int32_t itemID)
+ BackForwardForwardListCount() -> (int32_t itemID)
+
+ # UndoRedo messages.
+ RegisterEditCommandForUndo(uint64_t commandID, uint32_t editAction)
+ ClearAllEditCommands()
+
+#if USE(ACCELERATED_COMPOSITING)
+ # Accelerated compsiting messages.
+ DidChangeAcceleratedCompositing(bool compositing) -> (WebKit::DrawingAreaBase::DrawingAreaInfo newDrawingArea)
+#endif
+}
diff --git a/WebKit2/UIProcess/win/WebView.cpp b/WebKit2/UIProcess/win/WebView.cpp
index b47d371..f54da57 100644
--- a/WebKit2/UIProcess/win/WebView.cpp
+++ b/WebKit2/UIProcess/win/WebView.cpp
@@ -572,7 +572,7 @@ void WebView::setCursor(const WebCore::Cursor& cursor)
::SetCursor(platformCursor);
}
-void WebView::registerEditCommand(PassRefPtr<WebEditCommandProxy>, UndoOrRedo)
+void WebView::registerEditCommand(PassRefPtr<WebEditCommandProxy>, WebPageProxy::UndoOrRedo)
{
}
diff --git a/WebKit2/UIProcess/win/WebView.h b/WebKit2/UIProcess/win/WebView.h
index 02b546d..60254d5 100644
--- a/WebKit2/UIProcess/win/WebView.h
+++ b/WebKit2/UIProcess/win/WebView.h
@@ -95,7 +95,7 @@ private:
virtual void takeFocus(bool direction);
virtual void toolTipChanged(const WTF::String&, const WTF::String&);
virtual void setCursor(const WebCore::Cursor&);
- virtual void registerEditCommand(PassRefPtr<WebEditCommandProxy>, UndoOrRedo);
+ virtual void registerEditCommand(PassRefPtr<WebEditCommandProxy>, WebPageProxy::UndoOrRedo);
virtual void clearAllEditCommands();
virtual void setEditCommandState(const WTF::String&, bool, int);
diff --git a/WebKit2/WebKit2.pro b/WebKit2/WebKit2.pro
index 064fae6..caa47c2 100644
--- a/WebKit2/WebKit2.pro
+++ b/WebKit2/WebKit2.pro
@@ -141,10 +141,12 @@ DEFINES += BUILDING_QT__
WEBKIT2_GENERATED_HEADERS = \
$$OUTPUT_DIR/WebKit2/generated/WebPageMessages.h \
+ $$OUTPUT_DIR/WebKit2/generated/WebPageProxyMessages.h \
$$OUTPUT_DIR/WebKit2/generated/WebProcessMessages.h
WEBKIT2_GENERATED_SOURCES = \
$$OUTPUT_DIR/WebKit2/generated/WebPageMessageReceiver.cpp \
+ $$OUTPUT_DIR/WebKit2/generated/WebPageProxyMessageReceiver.cpp \
$$OUTPUT_DIR/WebKit2/generated/WebProcessMessageReceiver.cpp
HEADERS += \
@@ -176,7 +178,6 @@ HEADERS += \
Shared/API/c/WKURLResponse.h \
Shared/CoreIPCSupport/DrawingAreaMessageKinds.h \
Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h \
- Shared/CoreIPCSupport/WebPageProxyMessageKinds.h \
Shared/CacheModel.h \
Shared/DrawingAreaBase.h \
Shared/ImmutableArray.h \
@@ -185,6 +186,7 @@ HEADERS += \
Shared/MutableDictionary.h \
Shared/NativeWebKeyboardEvent.h \
Shared/NotImplemented.h \
+ Shared/StringPairVector.h \
Shared/qt/MappedMemory.h \
Shared/qt/PlatformCertificateInfo.h \
Shared/qt/UpdateChunk.h \
diff --git a/WebKit2/WebKit2.xcodeproj/project.pbxproj b/WebKit2/WebKit2.xcodeproj/project.pbxproj
index 192dc28..ba8eb4f 100644
--- a/WebKit2/WebKit2.xcodeproj/project.pbxproj
+++ b/WebKit2/WebKit2.xcodeproj/project.pbxproj
@@ -189,8 +189,6 @@
BC111B51112F619200337BAB /* PageClientImpl.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC111B4C112F619200337BAB /* PageClientImpl.mm */; };
BC111B5D112F629800337BAB /* WebEventFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = BC111B5B112F629800337BAB /* WebEventFactory.h */; };
BC111B5E112F629800337BAB /* WebEventFactory.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC111B5C112F629800337BAB /* WebEventFactory.mm */; };
- BC111B64112F638300337BAB /* WebPageProxyMessageKinds.h in Headers */ = {isa = PBXBuildFile; fileRef = BC111B61112F638300337BAB /* WebPageProxyMessageKinds.h */; };
- BC111B65112F638300337BAB /* WebProcessMessageKinds.h in Headers */ = {isa = PBXBuildFile; fileRef = BC111B62112F638300337BAB /* WebProcessMessageKinds.h */; };
BC131BC911726C2800B69727 /* CoreIPCMessageKinds.h in Headers */ = {isa = PBXBuildFile; fileRef = BC131BC811726C2800B69727 /* CoreIPCMessageKinds.h */; };
BC14DF77120B5B7900826C0C /* InjectedBundleScriptWorld.h in Headers */ = {isa = PBXBuildFile; fileRef = BC14DF75120B5B7900826C0C /* InjectedBundleScriptWorld.h */; };
BC14DF78120B5B7900826C0C /* InjectedBundleScriptWorld.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC14DF76120B5B7900826C0C /* InjectedBundleScriptWorld.cpp */; };
@@ -351,6 +349,9 @@
BCB9F8B01124E07700A137E0 /* WebPolicyClient.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB9F8AE1124E07700A137E0 /* WebPolicyClient.h */; };
BCBCB0CB1215E32100DE59CA /* ImmutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = BCBCB0CA1215E32100DE59CA /* ImmutableDictionary.h */; };
BCBCB0CD1215E33A00DE59CA /* ImmutableDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCBCB0CC1215E33A00DE59CA /* ImmutableDictionary.cpp */; };
+ BCBD3914125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCBD3912125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp */; };
+ BCBD3915125BB1A800D2C29F /* WebPageProxyMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = BCBD3913125BB1A800D2C29F /* WebPageProxyMessages.h */; };
+ BCBD3C3B125BFA7A00D2C29F /* StringPairVector.h in Headers */ = {isa = PBXBuildFile; fileRef = BCBD3C3A125BFA7A00D2C29F /* StringPairVector.h */; };
BCC56F791159957D001CCAF9 /* MachPort.h in Headers */ = {isa = PBXBuildFile; fileRef = BCC56F771159957D001CCAF9 /* MachPort.h */; };
BCC5715B115ADAEF001CCAF9 /* WebSystemInterface.h in Headers */ = {isa = PBXBuildFile; fileRef = BCC57159115ADAEF001CCAF9 /* WebSystemInterface.h */; };
BCC5715C115ADAEF001CCAF9 /* WebSystemInterface.mm in Sources */ = {isa = PBXBuildFile; fileRef = BCC5715A115ADAEF001CCAF9 /* WebSystemInterface.mm */; };
@@ -641,8 +642,6 @@
BC111B4C112F619200337BAB /* PageClientImpl.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PageClientImpl.mm; sourceTree = "<group>"; };
BC111B5B112F629800337BAB /* WebEventFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebEventFactory.h; sourceTree = "<group>"; };
BC111B5C112F629800337BAB /* WebEventFactory.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebEventFactory.mm; sourceTree = "<group>"; };
- BC111B61112F638300337BAB /* WebPageProxyMessageKinds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPageProxyMessageKinds.h; sourceTree = "<group>"; };
- BC111B62112F638300337BAB /* WebProcessMessageKinds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebProcessMessageKinds.h; sourceTree = "<group>"; };
BC131BC811726C2800B69727 /* CoreIPCMessageKinds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoreIPCMessageKinds.h; sourceTree = "<group>"; };
BC14DF75120B5B7900826C0C /* InjectedBundleScriptWorld.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundleScriptWorld.h; sourceTree = "<group>"; };
BC14DF76120B5B7900826C0C /* InjectedBundleScriptWorld.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleScriptWorld.cpp; sourceTree = "<group>"; };
@@ -803,6 +802,10 @@
BCB9F8AE1124E07700A137E0 /* WebPolicyClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPolicyClient.h; sourceTree = "<group>"; };
BCBCB0CA1215E32100DE59CA /* ImmutableDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImmutableDictionary.h; sourceTree = "<group>"; };
BCBCB0CC1215E33A00DE59CA /* ImmutableDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ImmutableDictionary.cpp; sourceTree = "<group>"; };
+ BCBD38FA125BAB9A00D2C29F /* WebPageProxy.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebPageProxy.messages.in; sourceTree = "<group>"; };
+ BCBD3912125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebPageProxyMessageReceiver.cpp; sourceTree = "<group>"; };
+ BCBD3913125BB1A800D2C29F /* WebPageProxyMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPageProxyMessages.h; sourceTree = "<group>"; };
+ BCBD3C3A125BFA7A00D2C29F /* StringPairVector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StringPairVector.h; sourceTree = "<group>"; };
BCC56F771159957D001CCAF9 /* MachPort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MachPort.h; sourceTree = "<group>"; };
BCC57159115ADAEF001CCAF9 /* WebSystemInterface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebSystemInterface.h; sourceTree = "<group>"; };
BCC5715A115ADAEF001CCAF9 /* WebSystemInterface.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebSystemInterface.mm; sourceTree = "<group>"; };
@@ -1130,6 +1133,7 @@
1A0F29CA120B37160053D1B9 /* VisitedLinkTable.h */,
BC1DD7B1114DC396005ADAF3 /* WebCoreArgumentCoders.h */,
BCF50726124329AA005955AE /* WebCertificateInfo.h */,
+ BCBD3C3A125BFA7A00D2C29F /* StringPairVector.h */,
51578B821209ECEF00A37C4A /* WebData.h */,
516A4A5B120A2CCD00C05B7F /* WebError.h */,
BC032DAF10F4380F0058C15A /* WebEvent.h */,
@@ -1330,6 +1334,7 @@
BCEE98C5113314D7006BCC24 /* WebPageNamespace.h */,
BC111B0B112F5E4F00337BAB /* WebPageProxy.cpp */,
BC032DCB10F4389F0058C15A /* WebPageProxy.h */,
+ BCBD38FA125BAB9A00D2C29F /* WebPageProxy.messages.in */,
BCB9F8AD1124E07700A137E0 /* WebPolicyClient.cpp */,
BCB9F8AE1124E07700A137E0 /* WebPolicyClient.h */,
BCD597FE112B57BE00EC8C23 /* WebPreferences.cpp */,
@@ -1460,8 +1465,6 @@
BC9E969911457EDE00870E71 /* DrawingAreaProxyMessageKinds.h */,
BCB28CBF120233D9007D99BC /* InjectedBundleMessageKinds.h */,
BCCB75C51203A1CE00222D1B /* WebContextMessageKinds.h */,
- BC111B61112F638300337BAB /* WebPageProxyMessageKinds.h */,
- BC111B62112F638300337BAB /* WebProcessMessageKinds.h */,
BCB7346D11CEE3FF00EC5002 /* WebProcessProxyMessageKinds.h */,
);
path = CoreIPCSupport;
@@ -1702,6 +1705,8 @@
1A8EFA6F1252B84100F7067F /* PluginProxyMessages.h */,
C0CE729E1247E71D00BC0EC4 /* WebPageMessageReceiver.cpp */,
C0CE729F1247E71D00BC0EC4 /* WebPageMessages.h */,
+ BCBD3912125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp */,
+ BCBD3913125BB1A800D2C29F /* WebPageProxyMessages.h */,
1A043F6712514D8B00FFBFB5 /* WebProcessConnectionMessageReceiver.cpp */,
1A043F6812514D8B00FFBFB5 /* WebProcessConnectionMessages.h */,
BC3066BC125A442100E71278 /* WebProcessMessageReceiver.cpp */,
@@ -1807,7 +1812,6 @@
BC032D8F10F437A00058C15A /* WebPage.h in Headers */,
BCEE98C7113314D7006BCC24 /* WebPageNamespace.h in Headers */,
BC032DD110F4389F0058C15A /* WebPageProxy.h in Headers */,
- BC111B64112F638300337BAB /* WebPageProxyMessageKinds.h in Headers */,
1A3E736111CC2659007BD539 /* WebPlatformStrategies.h in Headers */,
BCB9F8B01124E07700A137E0 /* WebPolicyClient.h in Headers */,
BCD597FF112B57BE00EC8C23 /* WebPreferences.h in Headers */,
@@ -1815,7 +1819,6 @@
BC032D9710F437AF0058C15A /* WebProcess.h in Headers */,
1A6FA02011E1528700DB1371 /* WebProcessMain.h in Headers */,
BC032DD310F4389F0058C15A /* WebProcessManager.h in Headers */,
- BC111B65112F638300337BAB /* WebProcessMessageKinds.h in Headers */,
BC032DD510F4389F0058C15A /* WebProcessProxy.h in Headers */,
BCB7346E11CEE3FF00EC5002 /* WebProcessProxyMessageKinds.h in Headers */,
BCC5715B115ADAEF001CCAF9 /* WebSystemInterface.h in Headers */,
@@ -1938,6 +1941,8 @@
BC3065FA1259344E00E71278 /* CacheModel.h in Headers */,
BC3066BF125A442100E71278 /* WebProcessMessages.h in Headers */,
BC306824125A6B9400E71278 /* WebProcessCreationParameters.h in Headers */,
+ BCBD3915125BB1A800D2C29F /* WebPageProxyMessages.h in Headers */,
+ BCBD3C3B125BFA7A00D2C29F /* StringPairVector.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -2235,6 +2240,7 @@
BC3065C412592F8900E71278 /* WebProcessMac.mm in Sources */,
BC3066BE125A442100E71278 /* WebProcessMessageReceiver.cpp in Sources */,
BC306825125A6B9400E71278 /* WebProcessCreationParameters.cpp in Sources */,
+ BCBD3914125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
diff --git a/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp b/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
index 88338c8..c095ae0 100644
--- a/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
+++ b/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
@@ -36,7 +36,7 @@
#include "WebFrameLoaderClient.h"
#include "WebPage.h"
#include "WebPageCreationParameters.h"
-#include "WebPageProxyMessageKinds.h"
+#include "WebPageProxyMessages.h"
#include "WebPopupMenu.h"
#include "WebPreferencesStore.h"
#include "WebProcess.h"
@@ -57,7 +57,7 @@ void WebChromeClient::chromeDestroyed()
delete this;
}
-void WebChromeClient::setWindowRect(const FloatRect&)
+void WebChromeClient::setWindowRect(const FloatRect& windowRect)
{
notImplemented();
}
@@ -98,8 +98,7 @@ bool WebChromeClient::canTakeFocus(FocusDirection)
void WebChromeClient::takeFocus(FocusDirection direction)
{
- WebProcess::shared().connection()->send(WebPageProxyMessage::TakeFocus, m_page->pageID(),
- direction == FocusDirectionForward ? true : false);
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::TakeFocus(direction == FocusDirectionForward ? true : false), m_page->pageID());
}
void WebChromeClient::focusedNodeChanged(Node*)
@@ -111,10 +110,9 @@ Page* WebChromeClient::createWindow(Frame*, const FrameLoadRequest&, const Windo
{
uint64_t newPageID = 0;
WebPageCreationParameters parameters;
- if (!WebProcess::shared().connection()->sendSync(WebPageProxyMessage::CreateNewPage,
- m_page->pageID(), CoreIPC::In(),
- CoreIPC::Out(newPageID, parameters),
- CoreIPC::Connection::NoTimeout)) {
+ if (!WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::CreateNewPage(),
+ Messages::WebPageProxy::CreateNewPage::Reply(newPageID, parameters),
+ m_page->pageID(), CoreIPC::Connection::NoTimeout)) {
return 0;
}
@@ -236,10 +234,8 @@ void WebChromeClient::runJavaScriptAlert(Frame* frame, const String& alertText)
// Notify the bundle client.
m_page->injectedBundleUIClient().willRunJavaScriptAlert(m_page, alertText, webFrame);
- WebProcess::shared().connection()->sendSync(WebPageProxyMessage::RunJavaScriptAlert, m_page->pageID(),
- CoreIPC::In(webFrame->frameID(), alertText),
- CoreIPC::Out(),
- CoreIPC::Connection::NoTimeout);
+ WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::RunJavaScriptAlert(webFrame->frameID(), alertText),
+ Messages::WebPageProxy::RunJavaScriptAlert::Reply(), m_page->pageID(), CoreIPC::Connection::NoTimeout);
}
bool WebChromeClient::runJavaScriptConfirm(Frame* frame, const String& message)
@@ -250,12 +246,9 @@ bool WebChromeClient::runJavaScriptConfirm(Frame* frame, const String& message)
m_page->injectedBundleUIClient().willRunJavaScriptConfirm(m_page, message, webFrame);
bool result = false;
- if (!WebProcess::shared().connection()->sendSync(WebPageProxyMessage::RunJavaScriptConfirm, m_page->pageID(),
- CoreIPC::In(webFrame->frameID(), message),
- CoreIPC::Out(result),
- CoreIPC::Connection::NoTimeout)) {
+ if (!WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::RunJavaScriptConfirm(webFrame->frameID(), message),
+ Messages::WebPageProxy::RunJavaScriptConfirm::Reply(result), m_page->pageID(), CoreIPC::Connection::NoTimeout))
return false;
- }
return result;
}
@@ -267,12 +260,9 @@ bool WebChromeClient::runJavaScriptPrompt(Frame* frame, const String& message, c
// Notify the bundle client.
m_page->injectedBundleUIClient().willRunJavaScriptPrompt(m_page, message, defaultValue, webFrame);
- if (!WebProcess::shared().connection()->sendSync(WebPageProxyMessage::RunJavaScriptPrompt, m_page->pageID(),
- CoreIPC::In(webFrame->frameID(), message, defaultValue),
- CoreIPC::Out(result),
- CoreIPC::Connection::NoTimeout)) {
+ if (!WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::RunJavaScriptPrompt(webFrame->frameID(), message, defaultValue),
+ Messages::WebPageProxy::RunJavaScriptPrompt::Reply(result), m_page->pageID(), CoreIPC::Connection::NoTimeout))
return false;
- }
return !result.isNull();
}
@@ -282,7 +272,7 @@ void WebChromeClient::setStatusbarText(const String& statusbarText)
// Notify the bundle client.
m_page->injectedBundleUIClient().willSetStatusbarText(m_page, statusbarText);
- WebProcess::shared().connection()->send(WebPageProxyMessage::SetStatusText, m_page->pageID(), statusbarText);
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::SetStatusText(statusbarText), m_page->pageID());
}
bool WebChromeClient::shouldInterruptJavaScript()
@@ -343,8 +333,8 @@ PlatformPageClient WebChromeClient::platformPageClient() const
void WebChromeClient::contentsSizeChanged(Frame* frame, const IntSize& size) const
{
WebFrame* webFrame = static_cast<WebFrameLoaderClient*>(frame->loader()->client())->webFrame();
- WebProcess::shared().connection()->send(WebPageProxyMessage::ContentsSizeChanged, m_page->pageID(),
- CoreIPC::In(webFrame->frameID(), size));
+
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::ContentsSizeChanged(webFrame->frameID(), size), m_page->pageID());
}
void WebChromeClient::scrollRectIntoView(const IntRect&, const ScrollView*) const
@@ -365,7 +355,7 @@ void WebChromeClient::mouseDidMoveOverElement(const HitTestResult& hitTestResult
m_page->injectedBundleUIClient().mouseDidMoveOverElement(m_page, hitTestResult, static_cast<WebEvent::Modifiers>(modifierFlags), userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::MouseDidMoveOverElement, m_page->pageID(), CoreIPC::In(modifierFlags, InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::MouseDidMoveOverElement(modifierFlags, InjectedBundleUserMessageEncoder(userData.get())), m_page->pageID());
}
void WebChromeClient::setToolTip(const String& toolTip, TextDirection)
@@ -376,7 +366,7 @@ void WebChromeClient::setToolTip(const String& toolTip, TextDirection)
return;
m_cachedToolTip = toolTip;
- WebProcess::shared().connection()->send(WebPageProxyMessage::SetToolTip, m_page->pageID(), CoreIPC::In(m_cachedToolTip));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::SetToolTip(m_cachedToolTip), m_page->pageID());
}
void WebChromeClient::print(Frame*)
@@ -476,7 +466,7 @@ void WebChromeClient::chooseIconForFiles(const Vector<String>&, FileChooser*)
void WebChromeClient::setCursor(const Cursor& cursor)
{
#if USE(LAZY_NATIVE_CURSOR)
- WebProcess::shared().connection()->send(WebPageProxyMessage::SetCursor, m_page->pageID(), CoreIPC::In(cursor));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::SetCursor(cursor), m_page->pageID());
#endif
}
diff --git a/WebKit2/WebProcess/WebCoreSupport/WebEditorClient.cpp b/WebKit2/WebProcess/WebCoreSupport/WebEditorClient.cpp
index 235f5ce..5852df1 100644
--- a/WebKit2/WebProcess/WebCoreSupport/WebEditorClient.cpp
+++ b/WebKit2/WebProcess/WebCoreSupport/WebEditorClient.cpp
@@ -30,7 +30,7 @@
#include "WebFrameLoaderClient.h"
#include "WebPage.h"
-#include "WebPageProxyMessageKinds.h"
+#include "WebPageProxyMessages.h"
#include "WebProcess.h"
#include <WebCore/ArchiveResource.h>
#include <WebCore/DocumentFragment.h>
@@ -211,8 +211,7 @@ void WebEditorClient::registerCommandForUndo(PassRefPtr<EditCommand> command)
m_page->addWebEditCommand(webCommand->commandID(), webCommand.get());
uint32_t editAction = static_cast<uint32_t>(webCommand->command()->editingAction());
- WebProcess::shared().connection()->send(WebPageProxyMessage::RegisterEditCommandForUndo, m_page->pageID(),
- CoreIPC::In(webCommand->commandID(), editAction));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::RegisterEditCommandForUndo(webCommand->commandID(), editAction), m_page->pageID());
}
void WebEditorClient::registerCommandForRedo(PassRefPtr<EditCommand>)
@@ -221,7 +220,7 @@ void WebEditorClient::registerCommandForRedo(PassRefPtr<EditCommand>)
void WebEditorClient::clearUndoRedoOperations()
{
- WebProcess::shared().connection()->send(WebPageProxyMessage::ClearAllEditCommands, m_page->pageID(), CoreIPC::In());
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::ClearAllEditCommands(), m_page->pageID());
}
bool WebEditorClient::canUndo() const
diff --git a/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp b/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
index 7786f7c..deb90e3 100644
--- a/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
+++ b/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
@@ -31,6 +31,7 @@
#include "InjectedBundleUserMessageCoders.h"
#include "PlatformCertificateInfo.h"
#include "PluginView.h"
+#include "StringPairVector.h"
#include "WebCoreArgumentCoders.h"
#include "WebErrors.h"
#include "WebEvent.h"
@@ -38,7 +39,7 @@
#include "WebFrameNetworkingContext.h"
#include "WebNavigationDataStore.h"
#include "WebPage.h"
-#include "WebPageProxyMessageKinds.h"
+#include "WebPageProxyMessages.h"
#include "WebProcess.h"
#include "WebProcessProxyMessageKinds.h"
#include <JavaScriptCore/APICast.h>
@@ -125,7 +126,8 @@ void WebFrameLoaderClient::detachedFromParent2()
webPage->injectedBundleLoaderClient().didRemoveFrameFromHierarchy(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidRemoveFrameFromHierarchy, webPage->pageID(), CoreIPC::In(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidRemoveFrameFromHierarchy(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
+
}
void WebFrameLoaderClient::detachedFromParent3()
@@ -223,7 +225,7 @@ void WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad()
webPage->injectedBundleLoaderClient().didReceiveServerRedirectForProvisionalLoadForFrame(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidReceiveServerRedirectForProvisionalLoadForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), url, InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidReceiveServerRedirectForProvisionalLoadForFrame(m_frame->frameID(), url, InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
}
void WebFrameLoaderClient::dispatchDidCancelClientRedirect()
@@ -295,7 +297,7 @@ void WebFrameLoaderClient::dispatchDidStartProvisionalLoad()
webPage->injectedBundleLoaderClient().didStartProvisionalLoadForFrame(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidStartProvisionalLoadForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), url, InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidStartProvisionalLoadForFrame(m_frame->frameID(), url, InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
}
void WebFrameLoaderClient::dispatchDidReceiveTitle(const String& title)
@@ -310,7 +312,7 @@ void WebFrameLoaderClient::dispatchDidReceiveTitle(const String& title)
webPage->injectedBundleLoaderClient().didReceiveTitleForFrame(webPage, title, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidReceiveTitleForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), title, InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidReceiveTitleForFrame(m_frame->frameID(), title, InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
}
void WebFrameLoaderClient::dispatchDidChangeIcons()
@@ -331,7 +333,7 @@ void WebFrameLoaderClient::dispatchDidCommitLoad()
webPage->injectedBundleLoaderClient().didCommitLoadForFrame(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidCommitLoadForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), response.mimeType(), PlatformCertificateInfo(response), InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidCommitLoadForFrame(m_frame->frameID(), response.mimeType(), PlatformCertificateInfo(response), InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
}
void WebFrameLoaderClient::dispatchDidFailProvisionalLoad(const ResourceError& error)
@@ -346,7 +348,7 @@ void WebFrameLoaderClient::dispatchDidFailProvisionalLoad(const ResourceError& e
webPage->injectedBundleLoaderClient().didFailProvisionalLoadWithErrorForFrame(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidFailProvisionalLoadForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidFailProvisionalLoadForFrame(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
// If we have a load listener, notify it.
if (WebFrame::LoadListener* loadListener = m_frame->loadListener())
@@ -365,7 +367,7 @@ void WebFrameLoaderClient::dispatchDidFailLoad(const ResourceError& error)
webPage->injectedBundleLoaderClient().didFailLoadWithErrorForFrame(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidFailLoadForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidFailLoadForFrame(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
// If we have a load listener, notify it.
if (WebFrame::LoadListener* loadListener = m_frame->loadListener())
@@ -384,7 +386,7 @@ void WebFrameLoaderClient::dispatchDidFinishDocumentLoad()
webPage->injectedBundleLoaderClient().didFinishDocumentLoadForFrame(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidFinishDocumentLoadForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidFinishDocumentLoadForFrame(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
}
void WebFrameLoaderClient::dispatchDidFinishLoad()
@@ -399,7 +401,7 @@ void WebFrameLoaderClient::dispatchDidFinishLoad()
webPage->injectedBundleLoaderClient().didFinishLoadForFrame(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidFinishLoadForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidFinishLoadForFrame(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
// If we have a load listener, notify it.
if (WebFrame::LoadListener* loadListener = m_frame->loadListener())
@@ -418,7 +420,7 @@ void WebFrameLoaderClient::dispatchDidFirstLayout()
webPage->injectedBundleLoaderClient().didFirstLayoutForFrame(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidFirstLayoutForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidFirstLayoutForFrame(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
}
void WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout()
@@ -433,7 +435,7 @@ void WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout()
webPage->injectedBundleLoaderClient().didFirstVisuallyNonEmptyLayoutForFrame(webPage, m_frame, userData);
// Notify the UIProcess.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidFirstVisuallyNonEmptyLayoutForFrame, webPage->pageID(), CoreIPC::In(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidFirstVisuallyNonEmptyLayoutForFrame(m_frame->frameID(), InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
}
Frame* WebFrameLoaderClient::dispatchCreatePage()
@@ -514,8 +516,7 @@ void WebFrameLoaderClient::dispatchDecidePolicyForMIMEType(FramePolicyFunction f
uint64_t listenerID = m_frame->setUpPolicyListener(function);
const String& url = request.url().string(); // FIXME: Pass entire request.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DecidePolicyForMIMEType, webPage->pageID(),
- CoreIPC::In(m_frame->frameID(), MIMEType, url, listenerID));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DecidePolicyForMIMEType(m_frame->frameID(), MIMEType, url, listenerID), webPage->pageID());
}
void WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction(FramePolicyFunction function, const NavigationAction& navigationAction, const ResourceRequest& request, PassRefPtr<FormState>, const String& frameName)
@@ -534,8 +535,7 @@ void WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction(FramePolicyFun
uint32_t modifiers = modifiersForNavigationAction(navigationAction);
int32_t mouseButton = mouseButtonForNavigationAction(navigationAction);
- WebProcess::shared().connection()->send(WebPageProxyMessage::DecidePolicyForNewWindowAction, webPage->pageID(),
- CoreIPC::In(m_frame->frameID(), navigationType, modifiers, mouseButton, url, listenerID));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DecidePolicyForNewWindowAction(m_frame->frameID(), navigationType, modifiers, mouseButton, url, listenerID), webPage->pageID());
}
void WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(FramePolicyFunction function, const NavigationAction& navigationAction, const ResourceRequest& request, PassRefPtr<FormState>)
@@ -560,8 +560,7 @@ void WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(FramePolicyFu
uint32_t modifiers = modifiersForNavigationAction(navigationAction);
int32_t mouseButton = mouseButtonForNavigationAction(navigationAction);
- WebProcess::shared().connection()->send(WebPageProxyMessage::DecidePolicyForNavigationAction, webPage->pageID(),
- CoreIPC::In(m_frame->frameID(), navigationType, modifiers, mouseButton, url, listenerID));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DecidePolicyForNavigationAction(m_frame->frameID(), navigationType, modifiers, mouseButton, url, listenerID), webPage->pageID());
}
void WebFrameLoaderClient::cancelPolicyCheck()
@@ -592,9 +591,9 @@ void WebFrameLoaderClient::dispatchWillSubmitForm(FramePolicyFunction function,
uint64_t listenerID = m_frame->setUpPolicyListener(function);
+ StringPairVector valuesVector(values);
- WebProcess::shared().connection()->send(WebPageProxyMessage::WillSubmitForm, webPage->pageID(),
- CoreIPC::In(m_frame->frameID(), sourceFrame->frameID(), values, listenerID, InjectedBundleUserMessageEncoder(userData.get())));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::WillSubmitForm(m_frame->frameID(), sourceFrame->frameID(), valuesVector, listenerID, InjectedBundleUserMessageEncoder(userData.get())), webPage->pageID());
}
void WebFrameLoaderClient::dispatchDidLoadMainResource(DocumentLoader*)
@@ -630,21 +629,22 @@ void WebFrameLoaderClient::didChangeEstimatedProgress()
void WebFrameLoaderClient::postProgressStartedNotification()
{
if (WebPage* webPage = m_frame->page())
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidStartProgress, webPage->pageID(), CoreIPC::In());
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidStartProgress(), webPage->pageID());
}
void WebFrameLoaderClient::postProgressEstimateChangedNotification()
{
if (WebPage* webPage = m_frame->page()) {
double progress = webPage->corePage()->progress()->estimatedProgress();
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidChangeProgress, webPage->pageID(), CoreIPC::In(progress));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidChangeProgress(progress), webPage->pageID());
+
}
}
void WebFrameLoaderClient::postProgressFinishedNotification()
{
if (WebPage* webPage = m_frame->page())
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidFinishProgress, webPage->pageID(), CoreIPC::In());
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidFinishProgress(), webPage->pageID());
}
void WebFrameLoaderClient::setMainFrameDocumentReady(bool)
@@ -948,7 +948,7 @@ PassRefPtr<Frame> WebFrameLoaderClient::createFrame(const KURL& url, const Strin
RefPtr<WebFrame> subframe = WebFrame::createSubframe(webPage, name, ownerElement);
// Notify the UI process that subframe has been added.
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidCreateSubFrame, webPage->pageID(), CoreIPC::In(subframe->frameID()));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidCreateSubFrame(subframe->frameID()), webPage->pageID());
Frame* coreSubframe = subframe->coreFrame();
diff --git a/WebKit2/WebProcess/WebPage/WebBackForwardListProxy.cpp b/WebKit2/WebProcess/WebPage/WebBackForwardListProxy.cpp
index 40d81b9..dc3ca69 100644
--- a/WebKit2/WebProcess/WebPage/WebBackForwardListProxy.cpp
+++ b/WebKit2/WebProcess/WebPage/WebBackForwardListProxy.cpp
@@ -27,7 +27,7 @@
#include "WebCoreArgumentCoders.h"
#include "WebPage.h"
-#include "WebPageProxyMessageKinds.h"
+#include "WebPageProxyMessages.h"
#include "WebProcess.h"
#include "WebProcessProxyMessageKinds.h"
#include <WebCore/HistoryItem.h>
@@ -119,7 +119,7 @@ void WebBackForwardListProxy::addItem(PassRefPtr<HistoryItem> prpItem)
RefPtr<HistoryItem> item = prpItem;
uint64_t itemID = historyItemToIDMap().get(item);
- WebProcess::shared().connection()->send(WebPageProxyMessage::BackForwardAddItem, m_page->pageID(), CoreIPC::In(itemID));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::BackForwardAddItem(itemID), m_page->pageID());
}
void WebBackForwardListProxy::goBack()
@@ -135,16 +135,16 @@ void WebBackForwardListProxy::goForward()
void WebBackForwardListProxy::goToItem(HistoryItem* item)
{
uint64_t itemID = historyItemToIDMap().get(item);
- WebProcess::shared().connection()->send(WebPageProxyMessage::BackForwardGoToItem, m_page->pageID(), CoreIPC::In(itemID));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::BackForwardGoToItem(itemID), m_page->pageID());
+
}
HistoryItem* WebBackForwardListProxy::backItem()
{
uint64_t backItemID = 0;
- if (!WebProcess::shared().connection()->sendSync(WebPageProxyMessage::BackForwardBackItem,
- m_page->pageID(), CoreIPC::In(),
- CoreIPC::Out(backItemID),
- CoreIPC::Connection::NoTimeout)) {
+ if (!WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::BackForwardBackItem(),
+ Messages::WebPageProxy::BackForwardBackItem::Reply(backItemID),
+ m_page->pageID(), CoreIPC::Connection::NoTimeout)) {
return 0;
}
@@ -158,10 +158,9 @@ HistoryItem* WebBackForwardListProxy::backItem()
HistoryItem* WebBackForwardListProxy::currentItem()
{
uint64_t currentItemID = 0;
- if (!WebProcess::shared().connection()->sendSync(WebPageProxyMessage::BackForwardCurrentItem,
- m_page->pageID(), CoreIPC::In(),
- CoreIPC::Out(currentItemID),
- CoreIPC::Connection::NoTimeout)) {
+ if (!WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::BackForwardCurrentItem(),
+ Messages::WebPageProxy::BackForwardCurrentItem::Reply(currentItemID),
+ m_page->pageID(), CoreIPC::Connection::NoTimeout)) {
return 0;
}
@@ -175,10 +174,9 @@ HistoryItem* WebBackForwardListProxy::currentItem()
HistoryItem* WebBackForwardListProxy::forwardItem()
{
uint64_t forwardItemID = 0;
- if (!WebProcess::shared().connection()->sendSync(WebPageProxyMessage::BackForwardForwardItem,
- m_page->pageID(), CoreIPC::In(),
- CoreIPC::Out(forwardItemID),
- CoreIPC::Connection::NoTimeout)) {
+ if (!WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::BackForwardForwardItem(),
+ Messages::WebPageProxy::BackForwardForwardItem::Reply(forwardItemID),
+ m_page->pageID(), CoreIPC::Connection::NoTimeout)) {
return 0;
}
@@ -192,10 +190,9 @@ HistoryItem* WebBackForwardListProxy::forwardItem()
HistoryItem* WebBackForwardListProxy::itemAtIndex(int itemIndex)
{
uint64_t itemID = 0;
- if (!WebProcess::shared().connection()->sendSync(WebPageProxyMessage::BackForwardItemAtIndex,
- m_page->pageID(), CoreIPC::In(itemIndex),
- CoreIPC::Out(itemID),
- CoreIPC::Connection::NoTimeout)) {
+ if (!WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::BackForwardItemAtIndex(itemIndex),
+ Messages::WebPageProxy::BackForwardItemAtIndex::Reply(itemID),
+ m_page->pageID(), CoreIPC::Connection::NoTimeout)) {
return 0;
}
@@ -239,10 +236,9 @@ void WebBackForwardListProxy::setEnabled(bool enabled)
int WebBackForwardListProxy::backListCount()
{
int backListCount = 0;
- if (!WebProcess::shared().connection()->sendSync(WebPageProxyMessage::BackForwardBackListCount,
- m_page->pageID(), CoreIPC::In(),
- CoreIPC::Out(backListCount),
- CoreIPC::Connection::NoTimeout)) {
+ if (!WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::BackForwardBackListCount(),
+ Messages::WebPageProxy::BackForwardBackListCount::Reply(backListCount),
+ m_page->pageID(), CoreIPC::Connection::NoTimeout)) {
return 0;
}
@@ -252,10 +248,9 @@ int WebBackForwardListProxy::backListCount()
int WebBackForwardListProxy::forwardListCount()
{
int forwardListCount = 0;
- if (!WebProcess::shared().connection()->sendSync(WebPageProxyMessage::BackForwardForwardListCount,
- m_page->pageID(), CoreIPC::In(),
- CoreIPC::Out(forwardListCount),
- CoreIPC::Connection::NoTimeout)) {
+ if (!WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::BackForwardForwardListCount(),
+ Messages::WebPageProxy::BackForwardForwardListCount::Reply(forwardListCount),
+ m_page->pageID(), CoreIPC::Connection::NoTimeout)) {
return 0;
}
diff --git a/WebKit2/WebProcess/WebPage/WebPage.cpp b/WebKit2/WebProcess/WebPage/WebPage.cpp
index 2d0cedd..312a2fc 100644
--- a/WebKit2/WebProcess/WebPage/WebPage.cpp
+++ b/WebKit2/WebProcess/WebPage/WebPage.cpp
@@ -46,7 +46,7 @@
#include "WebFrame.h"
#include "WebInspectorClient.h"
#include "WebPageCreationParameters.h"
-#include "WebPageProxyMessageKinds.h"
+#include "WebPageProxyMessages.h"
#include "WebProcessProxyMessageKinds.h"
#include "WebPreferencesStore.h"
#include "WebProcess.h"
@@ -142,7 +142,7 @@ WebPage::WebPage(uint64_t pageID, const WebPageCreationParameters& parameters)
Settings::setMinDOMTimerInterval(0.004);
m_mainFrame = WebFrame::createMainFrame(this);
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidCreateMainFrame, m_pageID, CoreIPC::In(m_mainFrame->frameID()));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidCreateMainFrame(m_mainFrame->frameID()), m_pageID);
#ifndef NDEBUG
webPageCounter.increment();
@@ -246,10 +246,10 @@ void WebPage::changeAcceleratedCompositingMode(WebCore::GraphicsLayer* layer)
// Tell the UI process that accelerated compositing changed. It may respond by changing
// drawing area types.
DrawingArea::DrawingAreaInfo newDrawingAreaInfo;
- WebProcess::shared().connection()->sendSync(WebPageProxyMessage::DidChangeAcceleratedCompositing,
- m_pageID, CoreIPC::In(compositing),
- CoreIPC::Out(newDrawingAreaInfo),
- CoreIPC::Connection::NoTimeout);
+
+ WebProcess::shared().connection()->sendSync(Messages::WebPageProxy::DidChangeAcceleratedCompositing(compositing),
+ Messages::WebPageProxy::DidChangeAcceleratedCompositing::Reply(newDrawingAreaInfo),
+ m_pageID, CoreIPC::Connection::NoTimeout);
if (newDrawingAreaInfo.type != drawingArea()->info().type) {
m_drawingArea = 0;
@@ -263,10 +263,7 @@ void WebPage::changeAcceleratedCompositingMode(WebCore::GraphicsLayer* layer)
void WebPage::enterAcceleratedCompositingMode(GraphicsLayer* layer)
{
changeAcceleratedCompositingMode(layer);
-
-#if USE(ACCELERATED_COMPOSITING)
m_drawingArea->setRootCompositingLayer(layer);
-#endif
}
void WebPage::exitAcceleratedCompositingMode()
@@ -297,7 +294,7 @@ void WebPage::tryClose()
void WebPage::sendClose()
{
- WebProcess::shared().connection()->send(WebPageProxyMessage::ClosePage, m_pageID, CoreIPC::In());
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::ClosePage(), m_pageID);
}
void WebPage::loadURL(const String& url)
@@ -481,8 +478,7 @@ void WebPage::mouseEvent(const WebMouseEvent& mouseEvent)
CurrentEvent currentEvent(mouseEvent);
bool handled = handleMouseEvent(mouseEvent, m_page.get());
-
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidReceiveEvent, m_pageID, CoreIPC::In(static_cast<uint32_t>(mouseEvent.type()), handled));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidReceiveEvent(static_cast<uint32_t>(mouseEvent.type()), handled), m_pageID);
}
static bool handleWheelEvent(const WebWheelEvent& wheelEvent, Page* page)
@@ -500,7 +496,7 @@ void WebPage::wheelEvent(const WebWheelEvent& wheelEvent)
CurrentEvent currentEvent(wheelEvent);
bool handled = handleWheelEvent(wheelEvent, m_page.get());
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidReceiveEvent, m_pageID, CoreIPC::In(static_cast<uint32_t>(wheelEvent.type()), handled));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidReceiveEvent(static_cast<uint32_t>(wheelEvent.type()), handled), m_pageID);
}
static bool handleKeyEvent(const WebKeyboardEvent& keyboardEvent, Page* page)
@@ -519,21 +515,21 @@ void WebPage::keyEvent(const WebKeyboardEvent& keyboardEvent)
if (!handled)
handled = performDefaultBehaviorForKeyEvent(keyboardEvent);
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidReceiveEvent, m_pageID, CoreIPC::In(static_cast<uint32_t>(keyboardEvent.type()), handled));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidReceiveEvent(static_cast<uint32_t>(keyboardEvent.type()), handled), m_pageID);
}
void WebPage::validateMenuItem(const String& commandName)
{
bool isEnabled = false;
- int state = 0;
+ int32_t state = 0;
Frame* frame = m_page->focusController()->focusedOrMainFrame();
if (frame) {
Editor::Command command = frame->editor()->command(commandName);
state = command.state();
isEnabled = command.isSupported() && command.isEnabled();
}
-
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidValidateMenuItem, m_pageID, CoreIPC::In(commandName, isEnabled, state));
+
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidValidateMenuItem(commandName, isEnabled, state), m_pageID);
}
void WebPage::executeEditCommand(const String& commandName)
@@ -557,7 +553,7 @@ void WebPage::touchEvent(const WebTouchEvent& touchEvent)
bool handled = handleTouchEvent(touchEvent, m_page.get());
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidReceiveEvent, m_pageID, CoreIPC::In(static_cast<uint32_t>(touchEvent.type()), handled));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidReceiveEvent(static_cast<uint32_t>(touchEvent.type()), handled), m_pageID);
}
#endif
@@ -612,7 +608,7 @@ void WebPage::didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, ui
void WebPage::show()
{
- WebProcess::shared().connection()->send(WebPageProxyMessage::ShowPage, m_pageID, CoreIPC::In());
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::ShowPage(), m_pageID);
}
void WebPage::setCustomUserAgent(const String& customUserAgent)
@@ -653,13 +649,13 @@ void WebPage::runJavaScriptInMainFrame(const String& script, uint64_t callbackID
JSValue resultValue = m_mainFrame->coreFrame()->script()->executeScript(script, true).jsValue();
String resultString = ustringToString(resultValue.toString(m_mainFrame->coreFrame()->script()->globalObject(mainThreadNormalWorld())->globalExec()));
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidRunJavaScriptInMainFrame, m_pageID, CoreIPC::In(resultString, callbackID));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidRunJavaScriptInMainFrame(resultString, callbackID), m_pageID);
}
void WebPage::getRenderTreeExternalRepresentation(uint64_t callbackID)
{
String resultString = renderTreeExternalRepresentation();
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidGetRenderTreeExternalRepresentation, m_pageID, CoreIPC::In(resultString, callbackID));
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidGetRenderTreeExternalRepresentation(resultString, callbackID), m_pageID);
}
void WebPage::getSourceForFrame(uint64_t frameID, uint64_t callbackID)
@@ -667,7 +663,8 @@ void WebPage::getSourceForFrame(uint64_t frameID, uint64_t callbackID)
String resultString;
if (WebFrame* frame = WebProcess::shared().webFrame(frameID))
resultString = frame->source();
- WebProcess::shared().connection()->send(WebPageProxyMessage::DidGetSourceForFrame, m_pageID, CoreIPC::In(resultString, callbackID));
+
+ WebProcess::shared().connection()->send(Messages::WebPageProxy::DidGetSourceForFrame(resultString, callbackID), m_pageID);
}
void WebPage::preferencesDidChange(const WebPreferencesStore& store)
diff --git a/WebKit2/win/WebKit2.vcproj b/WebKit2/win/WebKit2.vcproj
index 63fe5e5..720347f 100755
--- a/WebKit2/win/WebKit2.vcproj
+++ b/WebKit2/win/WebKit2.vcproj
@@ -449,6 +449,10 @@
>
</File>
<File
+ RelativePath="..\Shared\StringPairVector.h"
+ >
+ </File>
+ <File
RelativePath="..\Shared\UserMessageCoders.h"
>
</File>
@@ -764,10 +768,6 @@
>
</File>
<File
- RelativePath="..\Shared\CoreIPCSupport\WebPageProxyMessageKinds.h"
- >
- </File>
- <File
RelativePath="..\Shared\CoreIPCSupport\WebProcessProxyMessageKinds.h"
>
</File>
@@ -2029,6 +2029,14 @@
>
</File>
<File
+ RelativePath="$(WebKitOutputDir)\obj\$(ProjectName)\DerivedSources\WebPageProxyMessageReceiver.cpp"
+ >
+ </File>
+ <File
+ RelativePath="$(WebKitOutputDir)\obj\$(ProjectName)\DerivedSources\WebPageProxyMessages.h"
+ >
+ </File>
+ <File
RelativePath="$(WebKitOutputDir)\obj\$(ProjectName)\DerivedSources\WebProcessMessageReceiver.cpp"
>
</File>
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list