Chromium Code Reviews| Index: ui/base/dialogs/select_file_dialog_android.h | 
| diff --git a/ui/base/dialogs/select_file_dialog_android.h b/ui/base/dialogs/select_file_dialog_android.h | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..fa01ce2715d81d2a2357dab54f151c495c11d1b4 | 
| --- /dev/null | 
| +++ b/ui/base/dialogs/select_file_dialog_android.h | 
| @@ -0,0 +1,63 @@ | 
| +// Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
| +// Use of this source code is governed by a BSD-style license that can be | 
| +// found in the LICENSE file. | 
| + | 
| +#ifndef UI_BASE_DIALOGS_ANDROID_SELECT_FILE_DIALOG_ANDROID_H_ | 
| +#define UI_BASE_DIALOGS_ANDROID_SELECT_FILE_DIALOG_ANDROID_H_ | 
| + | 
| +#include <jni.h> | 
| + | 
| +#include "base/android/scoped_java_ref.h" | 
| +#include "base/file_path.h" | 
| +#include "ui/base/dialogs/select_file_dialog.h" | 
| + | 
| +namespace ui { | 
| + | 
| +class SelectFileDialogImpl : public ui::SelectFileDialog { | 
| + public: | 
| + static SelectFileDialogImpl* Create(Listener* listener, | 
| + ui::SelectFilePolicy* policy); | 
| + | 
| + void OnFileSelected(JNIEnv*, jobject, jstring filepath); | 
| 
 
sky
2012/09/13 16:24:03
Why do these need to be public?
 
sky
2012/09/13 16:24:03
all method parameters should have names and the na
 
aurimas (slooooooooow)
2012/09/17 16:56:45
Done.
 
aurimas (slooooooooow)
2012/09/17 16:56:45
They have to be public so java could access them t
 
 | 
| + void OnFileNotSelected(JNIEnv*, jobject); | 
| + | 
| + // From SelectFileDialog | 
| + virtual bool IsRunning(gfx::NativeWindow) const OVERRIDE; | 
| + virtual void ListenerDestroyed() OVERRIDE; | 
| + | 
| + // Called when it is time to display the file picker. | 
| + // params is expected to be a Vector<string16> with accept_types first and | 
| + // the capture value as the last element of the vector. | 
| + virtual void SelectFileImpl( | 
| + ui::SelectFileDialog::Type, | 
| + const string16& title, | 
| + const FilePath& default_path, | 
| + const ui::SelectFileDialog::FileTypeInfo* file_types, | 
| + int file_type_index, | 
| + const std::string& default_extension, | 
| + gfx::NativeWindow owning_window, | 
| + void* params) OVERRIDE; | 
| + | 
| + static bool RegisterSelectFileDialog(JNIEnv*); | 
| + | 
| + protected: | 
| + virtual ~SelectFileDialogImpl(); | 
| + | 
| + private: | 
| + explicit SelectFileDialogImpl(Listener* listener, | 
| 
 
sky
2012/09/13 16:24:04
no explicit and indentation is off.
 
aurimas (slooooooooow)
2012/09/14 00:06:59
Done.
 
 | 
| + ui::SelectFilePolicy* policy); | 
| + | 
| + virtual bool HasMultipleFileTypeChoicesImpl() OVERRIDE; | 
| + | 
| + base::android::ScopedJavaGlobalRef<jobject> java_object_; | 
| + | 
| + bool is_running_; | 
| 
 
sky
2012/09/13 16:24:04
add description.
 
 | 
| +}; | 
| 
 
sky
2012/09/13 16:24:04
DISALLOW_...
 
aurimas (slooooooooow)
2012/09/14 00:06:59
Done.
 
 | 
| + | 
| +SelectFileDialog* CreateAndroidSelectFileDialog( | 
| + SelectFileDialog::Listener* listener, | 
| + SelectFilePolicy* policy); | 
| + | 
| +} // namespace ui | 
| + | 
| +#endif // UI_BASE_DIALOGS_ANDROID_SELECT_FILE_DIALOG_ANDROID_H_ |