diff options
Diffstat (limited to 'webkit/glue/plugins/pepper_file_chooser.h')
-rw-r--r-- | webkit/glue/plugins/pepper_file_chooser.h | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/webkit/glue/plugins/pepper_file_chooser.h b/webkit/glue/plugins/pepper_file_chooser.h index 8474188..eafdd0e 100644 --- a/webkit/glue/plugins/pepper_file_chooser.h +++ b/webkit/glue/plugins/pepper_file_chooser.h @@ -6,33 +6,45 @@ #define WEBKIT_GLUE_PLUGINS_PEPPER_FILE_CHOOSER_H_ #include <string> +#include <vector> -#include "third_party/ppapi/c/ppb_file_chooser.h" +#include "base/scoped_ptr.h" +#include "third_party/ppapi/c/dev/ppb_file_chooser_dev.h" +#include "third_party/ppapi/c/pp_completion_callback.h" #include "webkit/glue/plugins/pepper_resource.h" namespace pepper { +class PluginDelegate; class PluginInstance; class FileChooser : public Resource { public: - FileChooser(PluginInstance* instance, const PP_FileChooserOptions* options); + FileChooser(PluginInstance* instance, + const PP_FileChooserOptions_Dev* options); virtual ~FileChooser(); // Returns a pointer to the interface implementing PPB_FileChooser that is // exposed to the plugin. - static const PPB_FileChooser* GetInterface(); + static const PPB_FileChooser_Dev* GetInterface(); // Resource overrides. FileChooser* AsFileChooser() { return this; } + // Stores the list of selected files. + void StoreChosenFiles(const std::vector<std::string>& files); + // PPB_FileChooser implementation. int32_t Show(PP_CompletionCallback callback); scoped_refptr<FileRef> GetNextChosenFile(); private: - PP_FileChooserMode mode_; + PluginDelegate* delegate_; + PP_FileChooserMode_Dev mode_; std::string accept_mime_types_; + PP_CompletionCallback completion_callback_; + std::vector< scoped_refptr<FileRef> > chosen_files_; + size_t next_chosen_file_index_; }; } // namespace pepper |