Title: [121197] trunk/Source/WebKit/chromium
- Revision
- 121197
- Author
- [email protected]
- Date
- 2012-06-25 17:11:55 -0700 (Mon, 25 Jun 2012)
Log Message
[Chromium] Add a chromium-webkit API to create a serializable file system.
https://bugs.webkit.org/show_bug.cgi?id=89776
In order to send a DOMFileSystem as part of WebIntent payload data it
should be serializable. Therefore, I added an API that allows us to
create serializable file system in chromium code.
Patch by Kausalya Madhusudhanan <[email protected]> on 2012-06-25
Reviewed by Adam Barth.
* public/WebFrame.h:
(WebFrame):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::createSerializableFileSystem):
(WebKit):
* src/WebFrameImpl.h:
(WebFrameImpl):
Modified Paths
Diff
Modified: trunk/Source/WebKit/chromium/ChangeLog (121196 => 121197)
--- trunk/Source/WebKit/chromium/ChangeLog 2012-06-26 00:08:19 UTC (rev 121196)
+++ trunk/Source/WebKit/chromium/ChangeLog 2012-06-26 00:11:55 UTC (rev 121197)
@@ -1,3 +1,22 @@
+2012-06-25 Kausalya Madhusudhanan <[email protected]>
+
+ [Chromium] Add a chromium-webkit API to create a serializable file system.
+ https://bugs.webkit.org/show_bug.cgi?id=89776
+
+ In order to send a DOMFileSystem as part of WebIntent payload data it
+ should be serializable. Therefore, I added an API that allows us to
+ create serializable file system in chromium code.
+
+ Reviewed by Adam Barth.
+
+ * public/WebFrame.h:
+ (WebFrame):
+ * src/WebFrameImpl.cpp:
+ (WebKit::WebFrameImpl::createSerializableFileSystem):
+ (WebKit):
+ * src/WebFrameImpl.h:
+ (WebFrameImpl):
+
2012-06-25 Alpha Lam <[email protected]>
Unreviewed, rolling out r121178.
Modified: trunk/Source/WebKit/chromium/public/WebFrame.h (121196 => 121197)
--- trunk/Source/WebKit/chromium/public/WebFrame.h 2012-06-26 00:08:19 UTC (rev 121196)
+++ trunk/Source/WebKit/chromium/public/WebFrame.h 2012-06-26 00:11:55 UTC (rev 121197)
@@ -297,6 +297,12 @@
virtual v8::Handle<v8::Value> createFileSystem(WebFileSystem::Type,
const WebString& name,
const WebString& rootURL) = 0;
+ // Creates an instance of serializable file system object.
+ // FIXME: Remove this API after we have a better way of creating serialized
+ // file system object.
+ virtual v8::Handle<v8::Value> createSerializableFileSystem(WebFileSystem::Type,
+ const WebString& name,
+ const WebString& rootURL) = 0;
// Creates an instance of file or directory entry object.
virtual v8::Handle<v8::Value> createFileEntry(WebFileSystem::Type,
const WebString& fileSystemName,
Modified: trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp (121196 => 121197)
--- trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp 2012-06-26 00:08:19 UTC (rev 121196)
+++ trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp 2012-06-26 00:11:55 UTC (rev 121197)
@@ -950,6 +950,15 @@
return toV8(DOMFileSystem::create(frame()->document(), name, static_cast<WebCore::FileSystemType>(type), KURL(ParsedURLString, path.utf8().data()), AsyncFileSystemChromium::create()));
}
+v8::Handle<v8::Value> WebFrameImpl::createSerializableFileSystem(WebFileSystem::Type type,
+ const WebString& name,
+ const WebString& path)
+{
+ RefPtr<DOMFileSystem> fs = DOMFileSystem::create(frame()->document(), name, static_cast<WebCore::FileSystemType>(type), KURL(ParsedURLString, path.utf8().data()), AsyncFileSystemChromium::create());
+ fs->makeClonable();
+ return toV8(fs.release());
+}
+
v8::Handle<v8::Value> WebFrameImpl::createFileEntry(WebFileSystem::Type type,
const WebString& fileSystemName,
const WebString& fileSystemPath,
Modified: trunk/Source/WebKit/chromium/src/WebFrameImpl.h (121196 => 121197)
--- trunk/Source/WebKit/chromium/src/WebFrameImpl.h 2012-06-26 00:08:19 UTC (rev 121196)
+++ trunk/Source/WebKit/chromium/src/WebFrameImpl.h 2012-06-26 00:11:55 UTC (rev 121197)
@@ -126,6 +126,9 @@
virtual v8::Handle<v8::Value> createFileSystem(WebFileSystem::Type,
const WebString& name,
const WebString& path);
+ virtual v8::Handle<v8::Value> createSerializableFileSystem(WebFileSystem::Type,
+ const WebString& name,
+ const WebString& path);
virtual v8::Handle<v8::Value> createFileEntry(WebFileSystem::Type,
const WebString& fileSystemName,
const WebString& fileSystemPath,
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes