diff options
author | Grace Kloba <klobag@google.com> | 2009-05-14 12:48:20 -0700 |
---|---|---|
committer | Grace Kloba <klobag@google.com> | 2009-05-14 12:48:20 -0700 |
commit | 64bd19be1df29b5d3b8207428607ca439fc04091 (patch) | |
tree | 01758af4cc2fa2969e2431e55d57137d08b0b1b8 /WebCore/plugins | |
parent | d48434fc633d173b549b97b1c614072adc9648a8 (diff) | |
download | external_webkit-64bd19be1df29b5d3b8207428607ca439fc04091.zip external_webkit-64bd19be1df29b5d3b8207428607ca439fc04091.tar.gz external_webkit-64bd19be1df29b5d3b8207428607ca439fc04091.tar.bz2 |
Move Browser test plugin from webkit project to development project.
Change how we set plugin path as we can support more than one path now.
Diffstat (limited to 'WebCore/plugins')
-rw-r--r-- | WebCore/plugins/PluginDatabase.cpp | 10 | ||||
-rw-r--r-- | WebCore/plugins/PluginDatabase.h | 7 | ||||
-rw-r--r-- | WebCore/plugins/android/PluginClient.h | 44 |
3 files changed, 60 insertions, 1 deletions
diff --git a/WebCore/plugins/PluginDatabase.cpp b/WebCore/plugins/PluginDatabase.cpp index e3b86ae..155bd24 100644 --- a/WebCore/plugins/PluginDatabase.cpp +++ b/WebCore/plugins/PluginDatabase.cpp @@ -32,6 +32,11 @@ #include "PluginPackage.h" #include <stdlib.h> +#if PLATFORM(ANDROID) +#include "JavaSharedClient.h" +#include "PluginClient.h" +#endif + namespace WebCore { PluginDatabase* PluginDatabase::installedPlugins() @@ -327,6 +332,11 @@ Vector<String> PluginDatabase::defaultPluginDirectories() paths.append(qtPaths); #endif +#if PLATFORM(ANDROID) + if (android::JavaSharedClient::GetPluginClient()) + return android::JavaSharedClient::GetPluginClient()->getPluginDirectories(); +#endif + return paths; } diff --git a/WebCore/plugins/PluginDatabase.h b/WebCore/plugins/PluginDatabase.h index ccb3821..b05d334 100644 --- a/WebCore/plugins/PluginDatabase.h +++ b/WebCore/plugins/PluginDatabase.h @@ -63,9 +63,14 @@ namespace WebCore { PluginPackage* findPlugin(const KURL&, String& mimeType); - private: +#ifdef ANDROID_PLUGINS void setPluginDirectories(const Vector<String>& directories) { m_pluginDirectories = directories; } +#endif + private: +#ifndef ANDROID_PLUGINS + void setPluginDirectories(const Vector<String>& directories) { m_pluginDirectories = directories; } +#endif void getPluginPathsInDirectories(HashSet<String>&) const; void getDeletedPlugins(PluginSet&) const; diff --git a/WebCore/plugins/android/PluginClient.h b/WebCore/plugins/android/PluginClient.h new file mode 100644 index 0000000..5dc300c --- /dev/null +++ b/WebCore/plugins/android/PluginClient.h @@ -0,0 +1,44 @@ +/* + * Copyright 2009, The Android Open Source Project + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * 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 THE COPYRIGHT HOLDERS ``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 COMPUTER, INC. OR + * 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 PLUGINCLIENT_H_ +#define PLUGINCLIENT_H_ + +#include "PlatformString.h" +#include <wtf/Vector.h> + +using namespace WebCore; + +namespace android { + + class PluginClient + { + public: + virtual ~PluginClient() {} + virtual Vector<String> getPluginDirectories() = 0; + }; +} + +#endif /* PLUGINCLIENT_H_ */ |