| OLD | NEW | 
|---|
| (Empty) |  | 
|  | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
|  | 2 // Use of this source code is governed by a BSD-style license that can be | 
|  | 3 // found in the LICENSE file. | 
|  | 4 | 
|  | 5 #include "content/browser/android/content_util.h" | 
|  | 6 | 
|  | 7 #include "base/android/jni_android.h" | 
|  | 8 #include "base/android/jni_array.h" | 
|  | 9 #include "base/android/jni_string.h" | 
|  | 10 #include "content/browser/web_contents/web_contents_impl.h" | 
|  | 11 | 
|  | 12 using base::android::AppendJavaStringArrayToStringVector; | 
|  | 13 using base::android::CheckException; | 
|  | 14 using base::android::ConvertJavaStringToUTF8; | 
|  | 15 using base::android::ConvertJavaStringToUTF16; | 
|  | 16 using base::android::ConvertUTF8ToJavaString; | 
|  | 17 using base::android::ConvertUTF16ToJavaString; | 
|  | 18 using base::android::GetClass; | 
|  | 19 using base::android::GetFieldID; | 
|  | 20 using base::android::GetMethodID; | 
|  | 21 using base::android::JavaRef; | 
|  | 22 using base::android::ScopedJavaLocalRef; | 
|  | 23 using base::android::ToJavaArrayOfStrings; | 
|  | 24 | 
|  | 25 namespace { | 
|  | 26 | 
|  | 27 const char kFileChooserParamsClassName[] = | 
|  | 28     "org/chromium/content/browser/FileChooserParams"; | 
|  | 29 | 
|  | 30 } | 
|  | 31 | 
|  | 32 namespace content { | 
|  | 33 | 
|  | 34 ScopedJavaLocalRef<jobject> ToJavaFileChooserParams( | 
|  | 35     JNIEnv* env, const FileChooserParams& file_chooser_params) { | 
|  | 36   ScopedJavaLocalRef<jclass> clazz = GetClass(env, kFileChooserParamsClassName); | 
|  | 37   jmethodID constructor_id = GetMethodID(env, clazz, "<init>", | 
|  | 38       "(ILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;" | 
|  | 39       "Ljava/lang/String;)V"); | 
|  | 40 | 
|  | 41   ScopedJavaLocalRef<jstring> title = | 
|  | 42       ConvertUTF16ToJavaString(env, file_chooser_params.title); | 
|  | 43   ScopedJavaLocalRef<jstring> default_file_name = | 
|  | 44       ConvertUTF8ToJavaString(env, | 
|  | 45                               file_chooser_params.default_file_name.value()); | 
|  | 46   ScopedJavaLocalRef<jobjectArray> accept_types = | 
|  | 47       ToJavaArrayOfStrings(env, file_chooser_params.accept_types); | 
|  | 48   ScopedJavaLocalRef<jstring> capture = | 
|  | 49       ConvertUTF16ToJavaString(env, file_chooser_params.capture); | 
|  | 50 | 
|  | 51   ScopedJavaLocalRef<jobject> java_params(env, | 
|  | 52       env->NewObject(clazz.obj(), | 
|  | 53                      constructor_id, | 
|  | 54                      static_cast<jint>(file_chooser_params.mode), | 
|  | 55                      title.obj(), | 
|  | 56                      default_file_name.obj(), | 
|  | 57                      accept_types.obj(), | 
|  | 58                      capture.obj())); | 
|  | 59   CheckException(env); | 
|  | 60 | 
|  | 61   return java_params; | 
|  | 62 } | 
|  | 63 | 
|  | 64 FileChooserParams ToNativeFileChooserParams( | 
|  | 65     JNIEnv* env, jint mode, jstring title, jstring default_file, | 
|  | 66     jobjectArray accept_types, jstring capture) { | 
|  | 67   FileChooserParams file_chooser_params; | 
|  | 68   file_chooser_params.mode = | 
|  | 69       static_cast<FileChooserParams::Mode>(mode); | 
|  | 70   file_chooser_params.title = ConvertJavaStringToUTF16(env, title); | 
|  | 71   file_chooser_params.default_file_name = | 
|  | 72       FilePath(ConvertJavaStringToUTF8(env, default_file)); | 
|  | 73   AppendJavaStringArrayToStringVector(env, accept_types, | 
|  | 74                                       &file_chooser_params.accept_types); | 
|  | 75   file_chooser_params.capture = ConvertJavaStringToUTF16(env, capture); | 
|  | 76 | 
|  | 77   return file_chooser_params; | 
|  | 78 } | 
|  | 79 | 
|  | 80 }  // namespace content | 
|  | 81 | 
| OLD | NEW | 
|---|