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/browser_jni_registrar.h" 6 7 #include "base/android/jni_android.h" 8 #include "base/android/jni_registrar.h" 9 #include "content/browser/accessibility/browser_accessibility_android.h" 10 #include "content/browser/accessibility/browser_accessibility_manager_android.h" 11 #include "content/browser/android/browser_startup_controller.h" 12 #include "content/browser/android/child_process_launcher_android.h" 13 #include "content/browser/android/content_settings.h" 14 #include "content/browser/android/content_video_view.h" 15 #include "content/browser/android/content_view_core_impl.h" 16 #include "content/browser/android/content_view_render_view.h" 17 #include "content/browser/android/content_view_statics.h" 18 #include "content/browser/android/date_time_chooser_android.h" 19 #include "content/browser/android/download_controller_android_impl.h" 20 #include "content/browser/android/interstitial_page_delegate_android.h" 21 #include "content/browser/android/load_url_params.h" 22 #include "content/browser/android/surface_texture_peer_browser_impl.h" 23 #include "content/browser/android/touch_point.h" 24 #include "content/browser/android/tracing_controller_android.h" 25 #include "content/browser/android/web_contents_observer_android.h" 26 #include "content/browser/device_orientation/data_fetcher_impl_android.h" 27 #include "content/browser/frame_host/navigation_controller_android.h" 28 #include "content/browser/geolocation/location_api_adapter_android.h" 29 #include "content/browser/media/android/media_drm_credential_manager.h" 30 #include "content/browser/media/android/media_resource_getter_impl.h" 31 #include "content/browser/power_save_blocker_android.h" 32 #include "content/browser/renderer_host/ime_adapter_android.h" 33 #include "content/browser/renderer_host/input/synthetic_gesture_target_android.h" 34 #include "content/browser/renderer_host/java/java_bound_object.h" 35 #include "content/browser/speech/speech_recognizer_impl_android.h" 36 #include "content/browser/vibration/vibration_provider_android.h" 37 #include "content/browser/web_contents/web_contents_android.h" 38 39 using content::SurfaceTexturePeerBrowserImpl; 40 41 namespace { 42 base::android::RegistrationMethod kContentRegisteredMethods[] = { 43 {"AndroidLocationApiAdapter", 44 content::AndroidLocationApiAdapter::RegisterGeolocationService}, 45 {"BrowserAccessibilityManager", 46 content::RegisterBrowserAccessibilityManager}, 47 {"BrowserStartupController", content::RegisterBrowserStartupController}, 48 {"ChildProcessLauncher", content::RegisterChildProcessLauncher}, 49 {"ContentSettings", content::ContentSettings::RegisterContentSettings}, 50 {"ContentViewRenderView", 51 content::ContentViewRenderView::RegisterContentViewRenderView}, 52 {"ContentVideoView", content::ContentVideoView::RegisterContentVideoView}, 53 {"ContentViewCore", content::RegisterContentViewCore}, 54 {"DataFetcherImplAndroid", content::DataFetcherImplAndroid::Register}, 55 {"DateTimePickerAndroid", content::RegisterDateTimeChooserAndroid}, 56 {"DownloadControllerAndroidImpl", 57 content::DownloadControllerAndroidImpl::RegisterDownloadController}, 58 {"InterstitialPageDelegateAndroid", 59 content::InterstitialPageDelegateAndroid:: 60 RegisterInterstitialPageDelegateAndroid}, 61 {"LoadUrlParams", content::RegisterLoadUrlParams}, 62 {"MediaDrmCredentialManager", 63 content::MediaDrmCredentialManager::RegisterMediaDrmCredentialManager}, 64 {"MediaResourceGetterImpl", 65 content::MediaResourceGetterImpl::RegisterMediaResourceGetter}, 66 {"NavigationControllerAndroid", 67 content::NavigationControllerAndroid::Register}, 68 {"PowerSaveBlock", content::RegisterPowerSaveBlocker}, 69 {"RegisterImeAdapter", content::RegisterImeAdapter}, 70 {"SpeechRecognizerImplAndroid", 71 content::SpeechRecognizerImplAndroid::RegisterSpeechRecognizer}, 72 {"TouchEventSynthesizer", 73 content::SyntheticGestureTargetAndroid::RegisterTouchEventSynthesizer}, 74 {"TouchPoint", content::RegisterTouchPoint}, 75 {"TracingControllerAndroid", content::RegisterTracingControllerAndroid}, 76 {"VibrationProvider", content::VibrationProviderAndroid::Register}, 77 {"WebContentsAndroid", content::WebContentsAndroid::Register}, 78 {"WebContentsObserverAndroid", content::RegisterWebContentsObserverAndroid}, 79 {"WebViewStatics", content::RegisterWebViewStatics}, }; 80 81 } // namespace 82 83 namespace content { 84 namespace android { 85 86 bool RegisterBrowserJni(JNIEnv* env) { 87 return RegisterNativeMethods(env, kContentRegisteredMethods, 88 arraysize(kContentRegisteredMethods)); 89 } 90 91 } // namespace android 92 } // namespace content 93