diff --git a/chrome/renderer/extensions/file_browser_handler_custom_bindings.cc b/chrome/renderer/extensions/file_browser_handler_custom_bindings.cc
index 9462f250493c0..f73a8e732d342 100644
--- a/chrome/renderer/extensions/file_browser_handler_custom_bindings.cc
+++ b/chrome/renderer/extensions/file_browser_handler_custom_bindings.cc
@@ -10,6 +10,7 @@
 #include "base/logging.h"
 #include "grit/renderer_resources.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystem.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebString.h"
 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h"
 
@@ -46,7 +47,11 @@ v8::Handle<v8::Value> FileBrowserHandlerCustomBindings::GetExternalFileEntry(
     WebKit::WebFrame* webframe =
         WebKit::WebFrame::frameForContext(v8_context());
     return webframe->createFileEntry(
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+        WebKit::WebFileSystemTypeExternal,
+#else
         WebKit::WebFileSystem::TypeExternal,
+#endif
         WebKit::WebString::fromUTF8(file_system_name.c_str()),
         WebKit::WebString::fromUTF8(file_system_path.c_str()),
         WebKit::WebString::fromUTF8(file_full_path.c_str()),
diff --git a/chrome/renderer/extensions/file_browser_private_custom_bindings.cc b/chrome/renderer/extensions/file_browser_private_custom_bindings.cc
index ea72c0bc12ec8..fcbe6b015eb75 100644
--- a/chrome/renderer/extensions/file_browser_private_custom_bindings.cc
+++ b/chrome/renderer/extensions/file_browser_private_custom_bindings.cc
@@ -10,6 +10,7 @@
 #include "base/logging.h"
 #include "grit/renderer_resources.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystem.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebString.h"
 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h"
 
@@ -35,7 +36,11 @@ v8::Handle<v8::Value> FileBrowserPrivateCustomBindings::GetLocalFileSystem(
   WebKit::WebFrame* webframe = WebKit::WebFrame::frameForContext(v8_context());
   DCHECK(webframe);
   return webframe->createFileSystem(
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+      WebKit::WebFileSystemTypeExternal,
+#else
       WebKit::WebFileSystem::TypeExternal,
+#endif
       WebKit::WebString::fromUTF8(name.c_str()),
       WebKit::WebString::fromUTF8(path.c_str()));
 }
diff --git a/chrome/renderer/extensions/file_system_natives.cc b/chrome/renderer/extensions/file_system_natives.cc
index 7812fe0951d10..d46ea9c0a24d0 100644
--- a/chrome/renderer/extensions/file_system_natives.cc
+++ b/chrome/renderer/extensions/file_system_natives.cc
@@ -13,6 +13,7 @@
 #include "extensions/common/constants.h"
 #include "grit/renderer_resources.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystem.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebString.h"
 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h"
 #include "webkit/fileapi/file_system_types.h"
@@ -58,7 +59,11 @@ v8::Handle<v8::Value> FileSystemNatives::GetIsolatedFileSystem(
       optional_root_name));
 
   return webframe->createFileSystem(
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+      WebKit::WebFileSystemTypeIsolated,
+#else
       WebKit::WebFileSystem::TypeIsolated,
+#endif
       WebKit::WebString::fromUTF8(name),
       WebKit::WebString::fromUTF8(root));
 }
@@ -68,7 +73,11 @@ v8::Handle<v8::Value> FileSystemNatives::GetFileEntry(
   DCHECK(args.Length() == 5);
   DCHECK(args[0]->IsString());
   std::string type_string = *v8::String::Utf8Value(args[0]->ToString());
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+  WebKit::WebFileSystemType type;
+#else
   WebKit::WebFileSystem::Type type;
+#endif
   bool is_valid_type = fileapi::GetFileSystemPublicType(type_string, &type);
   DCHECK(is_valid_type);
   if (is_valid_type == false) {
diff --git a/chrome/renderer/extensions/media_galleries_custom_bindings.cc b/chrome/renderer/extensions/media_galleries_custom_bindings.cc
index 1e65f2eaf0949..3c172d5c696cc 100644
--- a/chrome/renderer/extensions/media_galleries_custom_bindings.cc
+++ b/chrome/renderer/extensions/media_galleries_custom_bindings.cc
@@ -60,7 +60,12 @@ v8::Handle<v8::Value> MediaGalleriesCustomBindings::GetMediaFileSystemObject(
   const std::string root_url =
       fileapi::GetIsolatedFileSystemRootURIString(
           origin, fsid, extension_misc::kMediaFileSystemPathPart);
-  return webframe->createFileSystem(WebKit::WebFileSystem::TypeIsolated,
+  return webframe->createFileSystem(
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                                    WebKit::WebFileSystemTypeIsolated,
+#else
+                                    WebKit::WebFileSystem::TypeIsolated,
+#endif
                                     WebKit::WebString::fromUTF8(name),
                                     WebKit::WebString::fromUTF8(root_url));
 }
diff --git a/chrome/renderer/extensions/sync_file_system_custom_bindings.cc b/chrome/renderer/extensions/sync_file_system_custom_bindings.cc
index 3fa09dac2b8a1..8e38e703c0d9e 100644
--- a/chrome/renderer/extensions/sync_file_system_custom_bindings.cc
+++ b/chrome/renderer/extensions/sync_file_system_custom_bindings.cc
@@ -50,7 +50,12 @@ v8::Handle<v8::Value> SyncFileSystemCustomBindings::GetSyncFileSystemObject(
 
   WebKit::WebFrame* webframe =
       WebKit::WebFrame::frameForContext(v8_context());
-  return webframe->createFileSystem(WebKit::WebFileSystem::TypeExternal,
+  return webframe->createFileSystem(
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                                    WebKit::WebFileSystemTypeExternal,
+#else
+                                    WebKit::WebFileSystem::TypeExternal,
+#endif
                                     WebKit::WebString::fromUTF8(name),
                                     WebKit::WebString::fromUTF8(root_url));
 }
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index f887db4f4cf06..94756a67064b6 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -125,6 +125,7 @@
 #include "third_party/skia/include/core/SkPicture.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebCString.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebDragData.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebHTTPBody.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebImage.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebMessagePortChannel.h"
@@ -4200,7 +4201,11 @@ void RenderViewImpl::reportFindInPageSelection(int request_id,
 
 void RenderViewImpl::openFileSystem(
     WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    WebKit::WebFileSystemType type,
+#else
     WebFileSystem::Type type,
+#endif
     long long size,
     bool create,
     WebFileSystemCallbacks* callbacks) {
@@ -4220,7 +4225,11 @@ void RenderViewImpl::openFileSystem(
 
 void RenderViewImpl::deleteFileSystem(
     WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    WebKit::WebFileSystemType type ,
+#else
     WebFileSystem::Type type ,
+#endif
     WebFileSystemCallbacks* callbacks) {
   DCHECK(callbacks);
 
diff --git a/content/renderer/render_view_impl.h b/content/renderer/render_view_impl.h
index c7758fce5e2c9..37d47a305267c 100644
--- a/content/renderer/render_view_impl.h
+++ b/content/renderer/render_view_impl.h
@@ -641,12 +641,20 @@ class CONTENT_EXPORT RenderViewImpl
                                          int active_match_ordinal,
                                          const WebKit::WebRect& sel);
   virtual void openFileSystem(WebKit::WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                              WebKit::WebFileSystemType type,
+#else
                               WebKit::WebFileSystem::Type type,
+#endif
                               long long size,
                               bool create,
                               WebKit::WebFileSystemCallbacks* callbacks);
   virtual void deleteFileSystem(WebKit::WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                                WebKit::WebFileSystemType type,
+#else
                                 WebKit::WebFileSystem::Type type,
+#endif
                                 WebKit::WebFileSystemCallbacks* callbacks);
   virtual void queryStorageUsageAndQuota(
       WebKit::WebFrame* frame,
diff --git a/content/worker/websharedworkerclient_proxy.cc b/content/worker/websharedworkerclient_proxy.cc
index f17cdbdf89bfa..469f8ddc80379 100644
--- a/content/worker/websharedworkerclient_proxy.cc
+++ b/content/worker/websharedworkerclient_proxy.cc
@@ -161,7 +161,11 @@ bool WebSharedWorkerClientProxy::allowFileSystem() {
 }
 
 void WebSharedWorkerClientProxy::openFileSystem(
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    WebKit::WebFileSystemType type,
+#else
     WebKit::WebFileSystem::Type type,
+#endif
     long long size,
     bool create,
     WebKit::WebFileSystemCallbacks* callbacks) {
diff --git a/content/worker/websharedworkerclient_proxy.h b/content/worker/websharedworkerclient_proxy.h
index 504cad8e36a14..cfbcaf5d164b7 100644
--- a/content/worker/websharedworkerclient_proxy.h
+++ b/content/worker/websharedworkerclient_proxy.h
@@ -9,6 +9,7 @@
 #include "base/memory/weak_ptr.h"
 #include "ipc/ipc_channel.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystem.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 #include "third_party/WebKit/Source/WebKit/chromium/public/WebSharedWorkerClient.h"
 
 namespace WebKit {
@@ -74,7 +75,12 @@ class WebSharedWorkerClientProxy : public WebKit::WebSharedWorkerClient {
                              const WebKit::WebString& display_name,
                              unsigned long estimated_size);
   virtual bool allowFileSystem();
-  virtual void openFileSystem(WebKit::WebFileSystem::Type type,
+  virtual void openFileSystem(
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                              WebKit::WebFileSystemType type,
+#else
+                              WebKit::WebFileSystem::Type type,
+#endif
                               long long size,
                               bool create,
                               WebKit::WebFileSystemCallbacks* callbacks);
diff --git a/webkit/fileapi/file_system_types.h b/webkit/fileapi/file_system_types.h
index f657218ea014e..cd502845aab21 100644
--- a/webkit/fileapi/file_system_types.h
+++ b/webkit/fileapi/file_system_types.h
@@ -6,6 +6,7 @@
 #define WEBKIT_FILEAPI_FILE_SYSTEM_TYPES_H_
 
 #include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystem.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 
 namespace fileapi {
 
@@ -24,6 +25,18 @@ enum FileSystemType {
   // They are sandboxed filesystems; all the files in the filesystems are
   // placed under the profile directory with path obfuscation and quota
   // enforcement.
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+  kFileSystemTypeTemporary = WebKit::WebFileSystemTypeTemporary,
+  kFileSystemTypePersistent = WebKit::WebFileSystemTypePersistent,
+
+  // Indicates non-sandboxed isolated filesystem.
+  kFileSystemTypeIsolated = WebKit::WebFileSystemTypeIsolated,
+
+  // Indicates non-sandboxed filesystem where files are placed outside the
+  // profile directory (thus called 'external' filesystem).
+  // This filesystem is used only by Chrome OS as of writing.
+  kFileSystemTypeExternal = WebKit::WebFileSystemTypeExternal,
+#else
   kFileSystemTypeTemporary = WebKit::WebFileSystem::TypeTemporary,
   kFileSystemTypePersistent = WebKit::WebFileSystem::TypePersistent,
 
@@ -34,6 +47,7 @@ enum FileSystemType {
   // profile directory (thus called 'external' filesystem).
   // This filesystem is used only by Chrome OS as of writing.
   kFileSystemTypeExternal = WebKit::WebFileSystem::TypeExternal,
+#endif
 
   // ------------------------------------------------------------------------
   // Private FileSystem types, that should not appear in filesystem: URL as
diff --git a/webkit/fileapi/file_system_util.cc b/webkit/fileapi/file_system_util.cc
index 5b3f4f5c86ec9..7363d91c1949b 100644
--- a/webkit/fileapi/file_system_util.cc
+++ b/webkit/fileapi/file_system_util.cc
@@ -291,22 +291,43 @@ WebKit::WebFileError PlatformFileErrorToWebFileError(
 
 bool GetFileSystemPublicType(
     const std::string type_string,
-    WebKit::WebFileSystem::Type* type) {
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    WebKit::WebFileSystemType* type
+#else
+    WebKit::WebFileSystem::Type* type
+#endif
+) {
   DCHECK(type);
   if (type_string == "Temporary") {
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    *type = WebKit::WebFileSystemTypeTemporary;
+#else
     *type = WebKit::WebFileSystem::TypeTemporary;
+#endif
     return true;
   }
   if (type_string == "Persistent") {
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    *type = WebKit::WebFileSystemTypePersistent;
+#else
     *type = WebKit::WebFileSystem::TypePersistent;
+#endif
     return true;
   }
   if (type_string == "Isolated") {
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    *type = WebKit::WebFileSystemTypeIsolated;
+#else
     *type = WebKit::WebFileSystem::TypeIsolated;
+#endif
     return true;
   }
   if (type_string == "External") {
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    *type = WebKit::WebFileSystemTypeExternal;
+#else
     *type = WebKit::WebFileSystem::TypeExternal;
+#endif
     return true;
   }
   NOTREACHED();
diff --git a/webkit/fileapi/file_system_util.h b/webkit/fileapi/file_system_util.h
index 6ccb70107fb74..f9406b4cd2ed8 100644
--- a/webkit/fileapi/file_system_util.h
+++ b/webkit/fileapi/file_system_util.h
@@ -10,6 +10,7 @@
 
 #include "base/files/file_path.h"
 #include "base/platform_file.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFileError.h"
 #include "webkit/fileapi/file_system_types.h"
 #include "webkit/quota/quota_types.h"
@@ -114,7 +115,12 @@ WEBKIT_STORAGE_EXPORT std::string GetFileSystemTypeString(FileSystemType type);
 // Returns false if the |type_string| is invalid.
 WEBKIT_STORAGE_EXPORT bool GetFileSystemPublicType(
     std::string type_string,
-    WebKit::WebFileSystem::Type* type);
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    WebKit::WebFileSystemType* type
+#else
+    WebKit::WebFileSystem::Type* type
+#endif
+);
 
 // Encodes |file_path| to a string.
 // Following conditions should be held:
diff --git a/webkit/support/webkit_support.cc b/webkit/support/webkit_support.cc
index db9445178a61a..00f0741de8354 100644
--- a/webkit/support/webkit_support.cc
+++ b/webkit/support/webkit_support.cc
@@ -851,14 +851,24 @@ WebURL GetDevToolsPathAsURL() {
 }
 
 // FileSystem
-void OpenFileSystem(WebFrame* frame, WebFileSystem::Type type,
+void OpenFileSystem(WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    WebKit::WebFileSystemType type,
+#else
+    WebFileSystem::Type type,
+#endif
     long long size, bool create, WebFileSystemCallbacks* callbacks) {
   SimpleFileSystem* fileSystem = static_cast<SimpleFileSystem*>(
       test_environment->webkit_platform_support()->fileSystem());
   fileSystem->OpenFileSystem(frame, type, size, create, callbacks);
 }
 
-void DeleteFileSystem(WebFrame* frame, WebFileSystem::Type type,
+void DeleteFileSystem(WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                      WebKit::WebFileSystemType type,
+#else
+                      WebFileSystem::Type type,
+#endif
                       WebFileSystemCallbacks* callbacks) {
   SimpleFileSystem* fileSystem = static_cast<SimpleFileSystem*>(
       test_environment->webkit_platform_support()->fileSystem());
diff --git a/webkit/support/webkit_support.h b/webkit/support/webkit_support.h
index 8ea640887cb2f..72beccf3d9143 100644
--- a/webkit/support/webkit_support.h
+++ b/webkit/support/webkit_support.h
@@ -10,6 +10,7 @@
 #include "base/basictypes.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/Platform.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystem.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebGraphicsContext3D.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebReferrerPolicy.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebURLRequest.h"
@@ -266,12 +267,20 @@ WebKit::WebURL GetDevToolsPathAsURL();
 
 // - FileSystem
 void OpenFileSystem(WebKit::WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                    WebKit::WebFileSystemType type,
+#else
                     WebKit::WebFileSystem::Type type,
+#endif
                     long long size,
                     bool create,
                     WebKit::WebFileSystemCallbacks* callbacks);
 void DeleteFileSystem(WebKit::WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                      WebKit::WebFileSystemType type,
+#else
                       WebKit::WebFileSystem::Type type,
+#endif
                       WebKit::WebFileSystemCallbacks* callbacks);
 
 // Returns a filesystem ID for the newly created isolated filesystem.
diff --git a/webkit/tools/test_shell/simple_file_system.cc b/webkit/tools/test_shell/simple_file_system.cc
index 89507054f7883..970070e4dc845 100644
--- a/webkit/tools/test_shell/simple_file_system.cc
+++ b/webkit/tools/test_shell/simple_file_system.cc
@@ -95,7 +95,12 @@ SimpleFileSystem::~SimpleFileSystem() {
 }
 
 void SimpleFileSystem::OpenFileSystem(
-    WebFrame* frame, WebFileSystem::Type type,
+    WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    WebKit::WebFileSystemType type,
+#else
+    WebFileSystem::Type type,
+#endif
     long long, bool create,
     WebFileSystemCallbacks* callbacks) {
   if (!frame || !file_system_context_.get()) {
@@ -111,7 +116,12 @@ void SimpleFileSystem::OpenFileSystem(
 }
 
 void SimpleFileSystem::DeleteFileSystem(
-    WebFrame* frame, WebFileSystem::Type type,
+    WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    WebKit::WebFileSystemType type,
+#else
+    WebFileSystem::Type type,
+#endif
     WebFileSystemCallbacks* callbacks) {
   if (!frame || !file_system_context_.get()) {
     callbacks->didFail(WebKit::WebFileErrorSecurity);
diff --git a/webkit/tools/test_shell/simple_file_system.h b/webkit/tools/test_shell/simple_file_system.h
index 233624034e80b..6af770d1a7b4a 100644
--- a/webkit/tools/test_shell/simple_file_system.h
+++ b/webkit/tools/test_shell/simple_file_system.h
@@ -11,6 +11,7 @@
 #include "base/id_map.h"
 #include "base/memory/weak_ptr.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystem.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 #include "webkit/fileapi/file_system_context.h"
 #include "webkit/fileapi/file_system_operation.h"
 #include "webkit/fileapi/file_system_types.h"
@@ -38,12 +39,20 @@ class SimpleFileSystem
   virtual ~SimpleFileSystem();
 
   void OpenFileSystem(WebKit::WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                      WebKit::WebFileSystemType type,
+#else
                       WebKit::WebFileSystem::Type type,
+#endif
                       long long size,
                       bool create,
                       WebKit::WebFileSystemCallbacks* callbacks);
   void DeleteFileSystem(WebKit::WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+                        WebKit::WebFileSystemType type,
+#else
                         WebKit::WebFileSystem::Type type,
+#endif
                         WebKit::WebFileSystemCallbacks* callbacks);
 
   fileapi::FileSystemContext* file_system_context() {
diff --git a/webkit/tools/test_shell/test_webview_delegate.cc b/webkit/tools/test_shell/test_webview_delegate.cc
index c265827cc590d..eddcfbb6be18b 100644
--- a/webkit/tools/test_shell/test_webview_delegate.cc
+++ b/webkit/tools/test_shell/test_webview_delegate.cc
@@ -805,7 +805,13 @@ bool TestWebViewDelegate::allowScript(WebFrame* frame,
 }
 
 void TestWebViewDelegate::openFileSystem(
-    WebFrame* frame, WebFileSystem::Type type, long long size, bool create,
+    WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+    WebKit::WebFileSystemType type,
+#else
+    WebFileSystem::Type type,
+#endif
+    long long size, bool create,
     WebFileSystemCallbacks* callbacks) {
   SimpleFileSystem* fileSystem = static_cast<SimpleFileSystem*>(
       WebKit::Platform::current()->fileSystem());
diff --git a/webkit/tools/test_shell/test_webview_delegate.h b/webkit/tools/test_shell/test_webview_delegate.h
index 67f72590ada5c..6ea31afcea1b7 100644
--- a/webkit/tools/test_shell/test_webview_delegate.h
+++ b/webkit/tools/test_shell/test_webview_delegate.h
@@ -20,6 +20,7 @@
 #include "base/string16.h"
 #include "build/build_config.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystem.h"
+#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebGraphicsContext3D.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebRect.h"
 #include "third_party/WebKit/Source/WebKit/chromium/public/WebContextMenuData.h"
@@ -227,7 +228,11 @@ class TestWebViewDelegate : public WebKit::WebViewClient,
   virtual bool allowScript(WebKit::WebFrame* frame, bool enabled_per_settings);
   virtual void openFileSystem(
       WebKit::WebFrame* frame,
+#ifdef WEBKIT_USE_NEW_WEBFILESYSTEMTYPE
+      WebKit::WebFileSystemType type,
+#else
       WebKit::WebFileSystem::Type type,
+#endif
       long long size,
       bool create,
       WebKit::WebFileSystemCallbacks* callbacks);