summaryrefslogtreecommitdiffstats
path: root/Source/WebKit2/Shared
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-05-16 16:25:10 +0100
committerBen Murdoch <benm@google.com>2011-05-23 18:54:14 +0100
commitab9e7a118cf1ea2e3a93dce683b2ded3e7291ddb (patch)
treedb769fadd053248f85db67434a5b275224defef7 /Source/WebKit2/Shared
parent52e2557aeb8477967e97fd24f20f8f407a10fa15 (diff)
downloadexternal_webkit-ab9e7a118cf1ea2e3a93dce683b2ded3e7291ddb.zip
external_webkit-ab9e7a118cf1ea2e3a93dce683b2ded3e7291ddb.tar.gz
external_webkit-ab9e7a118cf1ea2e3a93dce683b2ded3e7291ddb.tar.bz2
Merge WebKit at r76408: Initial merge by git.
Change-Id: I5b91decbd693ccbf5c1b8354b37cd68cc9a1ea53
Diffstat (limited to 'Source/WebKit2/Shared')
-rw-r--r--Source/WebKit2/Shared/ChildProcess.h2
-rw-r--r--Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.cpp3
-rw-r--r--Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.h1
-rw-r--r--Source/WebKit2/Shared/UpdateInfo.cpp7
-rw-r--r--Source/WebKit2/Shared/UpdateInfo.h7
-rw-r--r--Source/WebKit2/Shared/WebMemorySampler.h4
-rw-r--r--Source/WebKit2/Shared/WebPageCreationParameters.h5
-rw-r--r--Source/WebKit2/Shared/WebProcessCreationParameters.cpp3
-rw-r--r--Source/WebKit2/Shared/WebProcessCreationParameters.h2
-rw-r--r--Source/WebKit2/Shared/mac/PasteboardTypes.h46
-rw-r--r--Source/WebKit2/Shared/mac/PasteboardTypes.mm70
11 files changed, 141 insertions, 9 deletions
diff --git a/Source/WebKit2/Shared/ChildProcess.h b/Source/WebKit2/Shared/ChildProcess.h
index 78fe1f4..8c5e8e3 100644
--- a/Source/WebKit2/Shared/ChildProcess.h
+++ b/Source/WebKit2/Shared/ChildProcess.h
@@ -27,13 +27,11 @@
#define ChildProcess_h
#include "Connection.h"
-#include <wtf/Noncopyable.h>
namespace WebKit {
class ChildProcess : protected CoreIPC::Connection::Client {
WTF_MAKE_NONCOPYABLE(ChildProcess);
-
protected:
ChildProcess();
~ChildProcess();
diff --git a/Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.cpp b/Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.cpp
index 90bbf07..c95a825 100644
--- a/Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.cpp
+++ b/Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.cpp
@@ -40,6 +40,7 @@ void PluginProcessCreationParameters::encode(CoreIPC::ArgumentEncoder* encoder)
encoder->encode(pluginPath);
#if PLATFORM(MAC)
+ encoder->encode(parentProcessName);
encoder->encode(acceleratedCompositingPort);
#endif
}
@@ -50,6 +51,8 @@ bool PluginProcessCreationParameters::decode(CoreIPC::ArgumentDecoder* decoder,
return false;
#if PLATFORM(MAC)
+ if (!decoder->decode(result.parentProcessName))
+ return false;
if (!decoder->decode(result.acceleratedCompositingPort))
return false;
#endif
diff --git a/Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.h b/Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.h
index 1aeef01..62cf4bb 100644
--- a/Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.h
+++ b/Source/WebKit2/Shared/Plugins/PluginProcessCreationParameters.h
@@ -50,6 +50,7 @@ struct PluginProcessCreationParameters {
String pluginPath;
#if PLATFORM(MAC)
+ String parentProcessName;
CoreIPC::MachPort acceleratedCompositingPort;
#endif
};
diff --git a/Source/WebKit2/Shared/UpdateInfo.cpp b/Source/WebKit2/Shared/UpdateInfo.cpp
index 1b504ed..182f75b 100644
--- a/Source/WebKit2/Shared/UpdateInfo.cpp
+++ b/Source/WebKit2/Shared/UpdateInfo.cpp
@@ -31,9 +31,10 @@ namespace WebKit {
void UpdateInfo::encode(CoreIPC::ArgumentEncoder* encoder) const
{
+ encoder->encode(timestamp);
encoder->encode(viewSize);
encoder->encode(scrollRect);
- encoder->encode(scrollDelta);
+ encoder->encode(scrollOffset);
encoder->encode(updateRectBounds);
encoder->encode(updateRects);
encoder->encode(bitmapHandle);
@@ -41,11 +42,13 @@ void UpdateInfo::encode(CoreIPC::ArgumentEncoder* encoder) const
bool UpdateInfo::decode(CoreIPC::ArgumentDecoder* decoder, UpdateInfo& result)
{
+ if (!decoder->decode(result.timestamp))
+ return false;
if (!decoder->decode(result.viewSize))
return false;
if (!decoder->decode(result.scrollRect))
return false;
- if (!decoder->decode(result.scrollDelta))
+ if (!decoder->decode(result.scrollOffset))
return false;
if (!decoder->decode(result.updateRectBounds))
return false;
diff --git a/Source/WebKit2/Shared/UpdateInfo.h b/Source/WebKit2/Shared/UpdateInfo.h
index 850911c..2ceb164 100644
--- a/Source/WebKit2/Shared/UpdateInfo.h
+++ b/Source/WebKit2/Shared/UpdateInfo.h
@@ -41,17 +41,20 @@ class UpdateInfo {
WTF_MAKE_NONCOPYABLE(UpdateInfo);
public:
- UpdateInfo() { }
+ UpdateInfo() : timestamp(0) { }
void encode(CoreIPC::ArgumentEncoder*) const;
static bool decode(CoreIPC::ArgumentDecoder*, UpdateInfo&);
+ // The timestamp of this update.
+ double timestamp;
+
// The size of the web view.
WebCore::IntSize viewSize;
// The rect and delta to be scrolled.
WebCore::IntRect scrollRect;
- WebCore::IntSize scrollDelta;
+ WebCore::IntSize scrollOffset;
// The bounds of the update rects.
WebCore::IntRect updateRectBounds;
diff --git a/Source/WebKit2/Shared/WebMemorySampler.h b/Source/WebKit2/Shared/WebMemorySampler.h
index 93254d9..c50d3bf 100644
--- a/Source/WebKit2/Shared/WebMemorySampler.h
+++ b/Source/WebKit2/Shared/WebMemorySampler.h
@@ -69,8 +69,8 @@ struct WebMemoryStatistics
Vector<size_t> values;
};
-class WebMemorySampler : public Noncopyable {
-
+class WebMemorySampler {
+ WTF_MAKE_NONCOPYABLE(WebMemorySampler);
public:
static WebMemorySampler* shared();
void start(const double interval=0);
diff --git a/Source/WebKit2/Shared/WebPageCreationParameters.h b/Source/WebKit2/Shared/WebPageCreationParameters.h
index e698ce7..8c76f68 100644
--- a/Source/WebKit2/Shared/WebPageCreationParameters.h
+++ b/Source/WebKit2/Shared/WebPageCreationParameters.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
+ * Copyright (C) 2010, 2011 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -66,9 +66,12 @@ struct WebPageCreationParameters {
SessionState sessionState;
uint64_t highestUsedBackForwardItemID;
+ bool canRunModal;
+
#if PLATFORM(MAC)
bool isSmartInsertDeleteEnabled;
#endif
+
#if PLATFORM(WIN)
HWND nativeWindow;
#endif
diff --git a/Source/WebKit2/Shared/WebProcessCreationParameters.cpp b/Source/WebKit2/Shared/WebProcessCreationParameters.cpp
index ceae6c1..77e3a82 100644
--- a/Source/WebKit2/Shared/WebProcessCreationParameters.cpp
+++ b/Source/WebKit2/Shared/WebProcessCreationParameters.cpp
@@ -56,6 +56,7 @@ void WebProcessCreationParameters::encode(CoreIPC::ArgumentEncoder* encoder) con
encoder->encode(languageCode);
encoder->encode(textCheckerState);
#if PLATFORM(MAC)
+ encoder->encode(parentProcessName);
encoder->encode(presenterApplicationPid);
encoder->encode(nsURLCachePath);
encoder->encode(nsURLCacheMemoryCapacity);
@@ -95,6 +96,8 @@ bool WebProcessCreationParameters::decode(CoreIPC::ArgumentDecoder* decoder, Web
return false;
#if PLATFORM(MAC)
+ if (!decoder->decode(parameters.parentProcessName))
+ return false;
if (!decoder->decode(parameters.presenterApplicationPid))
return false;
if (!decoder->decode(parameters.nsURLCachePath))
diff --git a/Source/WebKit2/Shared/WebProcessCreationParameters.h b/Source/WebKit2/Shared/WebProcessCreationParameters.h
index fe582b3..50d8a90 100644
--- a/Source/WebKit2/Shared/WebProcessCreationParameters.h
+++ b/Source/WebKit2/Shared/WebProcessCreationParameters.h
@@ -73,6 +73,8 @@ struct WebProcessCreationParameters {
TextCheckerState textCheckerState;
#if PLATFORM(MAC)
+ String parentProcessName;
+
pid_t presenterApplicationPid;
CString nsURLCachePath;
diff --git a/Source/WebKit2/Shared/mac/PasteboardTypes.h b/Source/WebKit2/Shared/mac/PasteboardTypes.h
new file mode 100644
index 0000000..712c4c0
--- /dev/null
+++ b/Source/WebKit2/Shared/mac/PasteboardTypes.h
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2011 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 PasteboardTypes_h
+#define PasteboardTypes_h
+
+namespace WebKit {
+
+class PasteboardTypes {
+public:
+ static NSString * const WebArchivePboardType;
+ static NSString * const WebURLsWithTitlesPboardType;
+ static NSString * const WebURLPboardType;
+ static NSString * const WebURLNamePboardType;
+
+ static NSArray *forEditing();
+ static NSArray *forURL();
+ static NSArray *forImages();
+ static NSArray *forImagesWithArchive();
+};
+
+} // namespace WebKit
+
+#endif // PasteboardTypes_h
diff --git a/Source/WebKit2/Shared/mac/PasteboardTypes.mm b/Source/WebKit2/Shared/mac/PasteboardTypes.mm
new file mode 100644
index 0000000..380e24c
--- /dev/null
+++ b/Source/WebKit2/Shared/mac/PasteboardTypes.mm
@@ -0,0 +1,70 @@
+/*
+ * Copyright (C) 2011 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.
+ */
+
+#import "PasteboardTypes.h"
+#import <wtf/RetainPtr.h>
+
+namespace WebKit {
+
+NSString * const PasteboardTypes::WebArchivePboardType = @"Apple Web Archive pasteboard type";
+NSString * const PasteboardTypes::WebURLsWithTitlesPboardType = @"WebURLsWithTitlesPboardType";
+NSString * const PasteboardTypes::WebURLPboardType = @"public.url";
+NSString * const PasteboardTypes::WebURLNamePboardType = @"public.url-name";
+
+static inline NSArray *retain(NSArray *array)
+{
+ CFRetain(array);
+ return array;
+}
+
+NSArray* PasteboardTypes::forEditing()
+{
+ static NSArray *types = retain([NSArray arrayWithObjects:WebArchivePboardType, NSHTMLPboardType, NSFilenamesPboardType, NSTIFFPboardType, NSPDFPboardType,
+#if defined(BUILDING_ON_TIGER) || defined(BUILDING_ON_LEOPARD)
+ NSPICTPboardType,
+#endif
+ NSURLPboardType, NSRTFDPboardType, NSRTFPboardType, NSStringPboardType, NSColorPboardType, kUTTypePNG, nil]);
+ return types;
+}
+
+NSArray* PasteboardTypes::forURL()
+{
+ static NSArray *types = retain([NSArray arrayWithObjects:WebURLsWithTitlesPboardType, NSURLPboardType, WebURLPboardType, WebURLNamePboardType, NSStringPboardType, NSFilenamesPboardType, nil]);
+ return types;
+}
+
+NSArray* PasteboardTypes::forImages()
+{
+ static NSArray *types = retain([NSArray arrayWithObjects:NSTIFFPboardType, WebURLsWithTitlesPboardType, NSURLPboardType, WebURLPboardType, WebURLNamePboardType, NSStringPboardType, nil]);
+ return types;
+}
+
+NSArray* PasteboardTypes::forImagesWithArchive()
+{
+ static NSArray *types = retain([NSArray arrayWithObjects:NSTIFFPboardType, WebURLsWithTitlesPboardType, NSURLPboardType, WebURLPboardType, WebURLNamePboardType, NSStringPboardType, NSRTFDPboardType, WebArchivePboardType, nil]);
+ return types;
+}
+
+} // namespace WebKit