browser_jni_registrar.cc revision c2e0dbddbe15c98d52c4786dac06cb8952a8ae6d
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/android/android_browser_process.h"
10#include "content/browser/android/child_process_launcher_android.h"
11#include "content/browser/android/content_settings.h"
12#include "content/browser/android/content_video_view.h"
13#include "content/browser/android/content_view_core_impl.h"
14#include "content/browser/android/content_view_render_view.h"
15#include "content/browser/android/content_view_statics.h"
16#include "content/browser/android/date_time_chooser_android.h"
17#include "content/browser/android/download_controller_android_impl.h"
18#include "content/browser/android/interstitial_page_delegate_android.h"
19#include "content/browser/android/load_url_params.h"
20#include "content/browser/android/media_resource_getter_impl.h"
21#include "content/browser/android/surface_texture_peer_browser_impl.h"
22#include "content/browser/android/touch_point.h"
23#include "content/browser/android/tracing_intent_handler.h"
24#include "content/browser/android/web_contents_observer_android.h"
25#include "content/browser/geolocation/location_api_adapter_android.h"
26#include "content/browser/renderer_host/ime_adapter_android.h"
27#include "content/browser/renderer_host/java/java_bound_object.h"
28
29using content::SurfaceTexturePeerBrowserImpl;
30
31namespace {
32base::android::RegistrationMethod kContentRegisteredMethods[] = {
33  { "AndroidLocationApiAdapter",
34    content::AndroidLocationApiAdapter::RegisterGeolocationService },
35  { "AndroidBrowserProcess", content::RegisterAndroidBrowserProcess },
36  { "ChildProcessLauncher", content::RegisterChildProcessLauncher },
37  { "ContentSettings", content::ContentSettings::RegisterContentSettings },
38  { "ContentViewRenderView",
39    content::ContentViewRenderView::RegisterContentViewRenderView },
40  { "ContentVideoView", content::ContentVideoView::RegisterContentVideoView },
41  { "ContentViewCore", content::RegisterContentViewCore },
42  { "DateTimePickerAndroid", content::RegisterDateTimeChooserAndroid},
43  { "DownloadControllerAndroidImpl",
44    content::DownloadControllerAndroidImpl::RegisterDownloadController },
45  { "InterstitialPageDelegateAndroid",
46    content::InterstitialPageDelegateAndroid
47        ::RegisterInterstitialPageDelegateAndroid },
48  { "MediaResourceGetterImpl",
49    content::MediaResourceGetterImpl::RegisterMediaResourceGetter },
50  { "LoadUrlParams", content::RegisterLoadUrlParams },
51  { "RegisterImeAdapter", content::RegisterImeAdapter },
52  { "TouchPoint", content::RegisterTouchPoint },
53  { "TracingIntentHandler", content::RegisterTracingIntentHandler },
54  { "WebContentsObserverAndroid", content::RegisterWebContentsObserverAndroid },
55  { "WebViewStatics", content::RegisterWebViewStatics },
56};
57
58}  // namespace
59
60namespace content {
61namespace android {
62
63bool RegisterBrowserJni(JNIEnv* env) {
64  return RegisterNativeMethods(env, kContentRegisteredMethods,
65                               arraysize(kContentRegisteredMethods));
66}
67
68}  // namespace android
69}  // namespace content
70