Bug 1444546 - Part 4: Use GENERATED_FILES for Android JNI wrapper generation. r=froydnj,jchen

MozReview-Commit-ID: 1IjoQdEMqr8

--HG--
extra : rebase_source : 9f2e539328d83aa15bce0357a8c7d2722d517b2a
This commit is contained in:
Nick Alexander 2018-03-06 20:09:37 -08:00
parent 53a4852ffa
commit bf575d403e
15 changed files with 92 additions and 12066 deletions

@ -24,13 +24,6 @@ storage/test/.*
testing/gtest/.*
tools/profiler/tests/.*
uriloader/exthandler/tests/.*
# JNI code is generated
widget/android/GeneratedJNINatives.h
widget/android/GeneratedJNIWrappers.cpp
widget/android/GeneratedJNIWrappers.h
widget/android/fennec/FennecJNINatives.h
widget/android/fennec/FennecJNIWrappers.cpp
widget/android/fennec/FennecJNIWrappers.h
widget/tests/.*
xpcom/glue/tests/.*
xpcom/tests/.*

@ -169,6 +169,11 @@ accessible/xpcom/export: xpcom/xpidl/export
# source code in order to write the SDK bindings.
widget/android/bindings/export: mobile/android/base/export
# The widget JNI wrapper generator code needs to build the GeckoView
# and Fennec source code in order to find JNI wrapper annotations.
widget/android/fennec/export: mobile/android/base/export
widget/android/export: mobile/android/base/export
# .xpt generation needs the xpidl lex/yacc files
xpcom/xpidl/export: xpcom/idl-parser/xpidl/export

@ -6,19 +6,6 @@
# find and create .mozconfig files and to generate targets.
.NOTPARALLEL:
GARBAGE += \
classes.dex \
gecko.ap_ \
GeneratedJNINatives.h \
GeneratedJNIWrappers.cpp \
GeneratedJNIWrappers.h \
FennecJNINatives.h \
FennecJNIWrappers.cpp \
FennecJNIWrappers.h \
$(NULL)
GARBAGE_DIRS += classes db jars res sync services generated
generated_resources := \
AndroidManifest.xml \
res/raw/browsersearch.json \
@ -43,31 +30,11 @@ chrome-%::
res/raw$(AB_rCD)/browsersearch.json \
AB_CD=$*
GeneratedJNIWrappers.cpp GeneratedJNIWrappers.h GeneratedJNINatives.h : android_apks
$(REPORT_BUILD)
FennecJNIWrappers.cpp FennecJNIWrappers.h FennecJNINatives.h: android_apks
$(REPORT_BUILD)
include $(topsrcdir)/config/rules.mk
# Override the Java settings with some specific android settings
include $(topsrcdir)/config/android-common.mk
update-generated-wrappers:
@cp $(CURDIR)/GeneratedJNIWrappers.cpp \
$(CURDIR)/GeneratedJNIWrappers.h \
$(CURDIR)/GeneratedJNINatives.h $(topsrcdir)/widget/android
@echo Updated generated JNI code
update-fennec-wrappers:
@cp $(CURDIR)/FennecJNIWrappers.cpp \
$(CURDIR)/FennecJNIWrappers.h \
$(CURDIR)/FennecJNINatives.h $(topsrcdir)/widget/android/fennec
@echo Updated Fennec JNI code
.PHONY: update-generated-wrappers update-fennec-wrappers
# This target is only used by IDE integrations. It rebuilds resources
# that end up in omni.ja using the equivalent of |mach build faster|,
# does most of the packaging step, and then updates omni.ja in
@ -100,73 +67,4 @@ endif
.PHONY: gradle-targets gradle-omnijar
# Neither multi-locale builds nor single-locale repacks should be
# generating JNI wrappers. In the future, generating JNI wrappers
# will be integrated into the build system closer to their use,
# avoiding these work-arounds.
ifneq (multi,$(AB_CD))
ifeq (,$(IS_LANGUAGE_REPACK))
# GeneratedJNIWrappers.cpp target also generates
# GeneratedJNIWrappers.h and GeneratedJNINatives.h
# FennecJNIWrappers.cpp target also generates
# FennecJNIWrappers.h and FennecJNINatives.h
# List of build flags used by auto-generated JNI bindings (through the
# @BuildFlag annotation in Java). For example, add a "MOZ_FOO \" line to this
# list to support @BuildFlag(MOZ_FOO).
#
# Be sure that the given BUILD_FLAG is exposed to the generated JNI
# wrapper compilation environment! This might mean adding a local
# DEFINE in /widget/android and/or /widget/android/fennec.
BINDING_BUILD_FLAGS = \
MOZ_NATIVE_DEVICES \
$(NULL)
# Preprocess a JNI binding file using the build flags defined above.
# $(1): JNI binding file to preprocess.
preprocess-binding = ($(call py_action,preprocessor, \
$(foreach flag,$(BINDING_BUILD_FLAGS),$(if $($(flag)),-D$(flag))) \
-DMOZ_PREPROCESSOR $(1)) || echo $(1))
# Preprocess and compare two versions of a JNI binding file, one in-tree
# version and one newly generated version.
# $(1): Base file name of the JNI binding file.
# $(2): Additional path to prepend to the in-tree file name. This is required
# because in-tree Fennec-specific bindings are in a separate fennec/ directory.
compare-binding = $(call preprocess-binding,$(1)) | ( \
$(call preprocess-binding,$(topsrcdir)/widget/android/$(2)$(1)) 3<&- | \
diff /dev/fd/3 - >/dev/null ) 3<&0
libs:: GeneratedJNIWrappers.cpp
@($(call compare-binding,GeneratedJNIWrappers.cpp) && \
$(call compare-binding,GeneratedJNIWrappers.h) && \
$(call compare-binding,GeneratedJNINatives.h)) || \
(echo '*****************************************************' && \
echo '*** Error: The generated JNI code has changed ***' && \
echo '* To update generated code in the tree, please run *' && \
echo && \
echo ' make -C $(CURDIR) update-generated-wrappers' && \
echo && \
echo '* Repeat the build, and check in any changes. *' && \
echo '*****************************************************' && \
exit 1)
libs:: FennecJNIWrappers.cpp
@($(call compare-binding,FennecJNIWrappers.cpp,fennec/) && \
$(call compare-binding,FennecJNIWrappers.h,fennec/) && \
$(call compare-binding,FennecJNINatives.h,fennec/)) || \
(echo '*****************************************************' && \
echo '*** Error: The Fennec JNI code has changed ***' && \
echo '* To update generated code in the tree, please run *' && \
echo && \
echo ' make -C $(CURDIR) update-fennec-wrappers' && \
echo && \
echo '* Repeat the build, and check in any changes. *' && \
echo '*****************************************************' && \
exit 1)
endif # ifneq (multi,$(AB_CD))
endif # ifeq (,$(IS_LANGUAGE_REPACK))
export:: android_apks

@ -111,6 +111,26 @@ def gradle_android_generate_sdk_bindings_tasks():
set_config('GRADLE_ANDROID_GENERATE_SDK_BINDINGS_TASKS', gradle_android_generate_sdk_bindings_tasks)
@depends(gradle_android_build_config)
def gradle_android_generate_generated_jni_wrappers_tasks(build_config):
'''Gradle tasks run by |mach android generate-generated-jni-wrappers|.'''
return [
'geckoview:generateJNIWrappersForGenerated{geckoview.variant.name}'.format(geckoview=build_config.geckoview),
]
set_config('GRADLE_ANDROID_GENERATE_GENERATED_JNI_WRAPPERS_TASKS', gradle_android_generate_generated_jni_wrappers_tasks)
@depends(gradle_android_build_config)
def gradle_android_generate_fennec_jni_wrappers_tasks(build_config):
'''Gradle tasks run by |mach android generate-fennec-jni-wrappers|.'''
return [
'app:generateJNIWrappersForFennec{app.variant.name}'.format(app=build_config.app),
]
set_config('GRADLE_ANDROID_GENERATE_FENNEC_JNI_WRAPPERS_TASKS', gradle_android_generate_fennec_jni_wrappers_tasks)
@depends(gradle_android_build_config, check_build_environment)
@imports(_from='itertools', _import='imap')
def gradle_android_app_apks(build_config, build_env):
@ -215,6 +235,8 @@ set_config('GRADLE_ANDROID_ARCHIVE_GECKOVIEW_TASKS', gradle_android_archive_geck
gradle_android_findbugs_tasks,
gradle_android_archive_geckoview_tasks,
gradle_android_generate_sdk_bindings_tasks,
gradle_android_generate_generated_jni_wrappers_tasks,
gradle_android_generate_fennec_jni_wrappers_tasks,
)
@imports(_from='itertools', _import='imap')
@imports(_from='itertools', _import='chain')

@ -41,3 +41,11 @@ def assemble_app(dummy_output_file, *inputs):
def generate_sdk_bindings(dummy_output_file, *args):
return android('generate-sdk-bindings', *args)
def generate_generated_jni_wrappers(dummy_output_file, *args):
return android('generate-generated-jni-wrappers', *args)
def generate_fennec_jni_wrappers(dummy_output_file, *args):
return android('generate-fennec-jni-wrappers', *args)

@ -145,7 +145,7 @@ ext.configureLibraryVariantWithJNIWrappers = { variant, module ->
args module
args output
workingDir "${topobjdir}/mobile/android/base"
workingDir "${topobjdir}/widget/android"
dependsOn jarTask
dependsOn annotationProcessorsJarTask
@ -186,7 +186,7 @@ ext.configureApplicationVariantWithJNIWrappers = { variant, module ->
args module
args output
workingDir "${topobjdir}/mobile/android/base"
workingDir "${topobjdir}/widget/android/fennec"
// This forces bundling, which isn't usually part of the assemble* process.
dependsOn jarTask

@ -82,6 +82,24 @@ class MachCommands(MachCommandBase):
return ret
@SubCommand('android', 'generate-generated-jni-wrappers',
"""Generate GeckoView JNI wrappers used when building GeckoView.""")
@CommandArgument('args', nargs=argparse.REMAINDER)
def android_generate_generated_jni_wrappers(self, args):
ret = self.gradle(self.substs['GRADLE_ANDROID_GENERATE_GENERATED_JNI_WRAPPERS_TASKS'] + args, verbose=True)
return ret
@SubCommand('android', 'generate-fennec-jni-wrappers',
"""Generate Fennec-specific JNI wrappers used when building Firefox for Android.""")
@CommandArgument('args', nargs=argparse.REMAINDER)
def android_generate_fennec_jni_wrappers(self, args):
ret = self.gradle(self.substs['GRADLE_ANDROID_GENERATE_FENNEC_JNI_WRAPPERS_TASKS'] + args, verbose=True)
return ret
@SubCommand('android', 'test',
"""Run Android local unit tests.
See https://developer.mozilla.org/en-US/docs/Mozilla/Android-specific_test_suites#android-test""")

@ -1,648 +0,0 @@
// GENERATED CODE
// Generated by the Java program at /build/annotationProcessors at compile time
// from annotations on Java methods. To update, change the annotations on the
// corresponding Java methods and rerun the build. Manually updating this file
// will cause your build to fail.
#ifndef GeneratedJNINatives_h
#define GeneratedJNINatives_h
#ifndef MOZ_PREPROCESSOR
#include "GeneratedJNIWrappers.h"
#include "mozilla/jni/Natives.h"
#endif
namespace mozilla {
namespace java {
template<class Impl>
class AndroidGamepadManager::Natives : public mozilla::jni::NativeImpl<AndroidGamepadManager, Impl>
{
public:
static const JNINativeMethod methods[3];
};
template<class Impl>
const JNINativeMethod AndroidGamepadManager::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<AndroidGamepadManager::OnAxisChange_t>(
mozilla::jni::NativeStub<AndroidGamepadManager::OnAxisChange_t, Impl>
::template Wrap<&Impl::OnAxisChange>),
mozilla::jni::MakeNativeMethod<AndroidGamepadManager::OnButtonChange_t>(
mozilla::jni::NativeStub<AndroidGamepadManager::OnButtonChange_t, Impl>
::template Wrap<&Impl::OnButtonChange>),
mozilla::jni::MakeNativeMethod<AndroidGamepadManager::OnGamepadChange_t>(
mozilla::jni::NativeStub<AndroidGamepadManager::OnGamepadChange_t, Impl>
::template Wrap<&Impl::OnGamepadChange>)
};
template<class Impl>
class EventDispatcher::Natives : public mozilla::jni::NativeImpl<EventDispatcher, Impl>
{
public:
static const JNINativeMethod methods[3];
};
template<class Impl>
const JNINativeMethod EventDispatcher::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<EventDispatcher::DispatchToGecko_t>(
mozilla::jni::NativeStub<EventDispatcher::DispatchToGecko_t, Impl>
::template Wrap<&Impl::DispatchToGecko>),
mozilla::jni::MakeNativeMethod<EventDispatcher::DisposeNative_t>(
mozilla::jni::NativeStub<EventDispatcher::DisposeNative_t, Impl>
::template Wrap<&Impl::DisposeNative>),
mozilla::jni::MakeNativeMethod<EventDispatcher::HasGeckoListener_t>(
mozilla::jni::NativeStub<EventDispatcher::HasGeckoListener_t, Impl>
::template Wrap<&Impl::HasGeckoListener>)
};
template<class Impl>
class EventDispatcher::NativeCallbackDelegate::Natives : public mozilla::jni::NativeImpl<NativeCallbackDelegate, Impl>
{
public:
static const JNINativeMethod methods[3];
};
template<class Impl>
const JNINativeMethod EventDispatcher::NativeCallbackDelegate::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<EventDispatcher::NativeCallbackDelegate::Finalize_t>(
mozilla::jni::NativeStub<EventDispatcher::NativeCallbackDelegate::Finalize_t, Impl>
::template Wrap<&Impl::Finalize>),
mozilla::jni::MakeNativeMethod<EventDispatcher::NativeCallbackDelegate::SendError_t>(
mozilla::jni::NativeStub<EventDispatcher::NativeCallbackDelegate::SendError_t, Impl>
::template Wrap<&Impl::SendError>),
mozilla::jni::MakeNativeMethod<EventDispatcher::NativeCallbackDelegate::SendSuccess_t>(
mozilla::jni::NativeStub<EventDispatcher::NativeCallbackDelegate::SendSuccess_t, Impl>
::template Wrap<&Impl::SendSuccess>)
};
template<class Impl>
class GeckoAppShell::Natives : public mozilla::jni::NativeImpl<GeckoAppShell, Impl>
{
public:
static const JNINativeMethod methods[6];
};
template<class Impl>
const JNINativeMethod GeckoAppShell::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoAppShell::NotifyObservers_t>(
mozilla::jni::NativeStub<GeckoAppShell::NotifyObservers_t, Impl>
::template Wrap<&Impl::NotifyObservers>),
mozilla::jni::MakeNativeMethod<GeckoAppShell::NotifyAlertListener_t>(
mozilla::jni::NativeStub<GeckoAppShell::NotifyAlertListener_t, Impl>
::template Wrap<&Impl::NotifyAlertListener>),
mozilla::jni::MakeNativeMethod<GeckoAppShell::NotifyUriVisited_t>(
mozilla::jni::NativeStub<GeckoAppShell::NotifyUriVisited_t, Impl>
::template Wrap<&Impl::NotifyUriVisited>),
mozilla::jni::MakeNativeMethod<GeckoAppShell::OnLocationChanged_t>(
mozilla::jni::NativeStub<GeckoAppShell::OnLocationChanged_t, Impl>
::template Wrap<&Impl::OnLocationChanged>),
mozilla::jni::MakeNativeMethod<GeckoAppShell::OnSensorChanged_t>(
mozilla::jni::NativeStub<GeckoAppShell::OnSensorChanged_t, Impl>
::template Wrap<&Impl::OnSensorChanged>),
mozilla::jni::MakeNativeMethod<GeckoAppShell::ReportJavaCrash_t>(
mozilla::jni::NativeStub<GeckoAppShell::ReportJavaCrash_t, Impl>
::template Wrap<&Impl::ReportJavaCrash>)
};
template<class Impl>
class GeckoAppShell::CameraCallback::Natives : public mozilla::jni::NativeImpl<CameraCallback, Impl>
{
public:
static const JNINativeMethod methods[1];
};
template<class Impl>
const JNINativeMethod GeckoAppShell::CameraCallback::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoAppShell::CameraCallback::OnFrameData_t>(
mozilla::jni::NativeStub<GeckoAppShell::CameraCallback::OnFrameData_t, Impl>
::template Wrap<&Impl::OnFrameData>)
};
template<class Impl>
class GeckoBatteryManager::Natives : public mozilla::jni::NativeImpl<GeckoBatteryManager, Impl>
{
public:
static const JNINativeMethod methods[1];
};
template<class Impl>
const JNINativeMethod GeckoBatteryManager::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoBatteryManager::OnBatteryChange_t>(
mozilla::jni::NativeStub<GeckoBatteryManager::OnBatteryChange_t, Impl>
::template Wrap<&Impl::OnBatteryChange>)
};
template<class Impl>
class GeckoEditableChild::Natives : public mozilla::jni::NativeImpl<GeckoEditableChild, Impl>
{
public:
static const JNINativeMethod methods[6];
};
template<class Impl>
const JNINativeMethod GeckoEditableChild::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoEditableChild::OnImeAddCompositionRange_t>(
mozilla::jni::NativeStub<GeckoEditableChild::OnImeAddCompositionRange_t, Impl>
::template Wrap<&Impl::OnImeAddCompositionRange>),
mozilla::jni::MakeNativeMethod<GeckoEditableChild::OnImeReplaceText_t>(
mozilla::jni::NativeStub<GeckoEditableChild::OnImeReplaceText_t, Impl>
::template Wrap<&Impl::OnImeReplaceText>),
mozilla::jni::MakeNativeMethod<GeckoEditableChild::OnImeRequestCursorUpdates_t>(
mozilla::jni::NativeStub<GeckoEditableChild::OnImeRequestCursorUpdates_t, Impl>
::template Wrap<&Impl::OnImeRequestCursorUpdates>),
mozilla::jni::MakeNativeMethod<GeckoEditableChild::OnImeSynchronize_t>(
mozilla::jni::NativeStub<GeckoEditableChild::OnImeSynchronize_t, Impl>
::template Wrap<&Impl::OnImeSynchronize>),
mozilla::jni::MakeNativeMethod<GeckoEditableChild::OnImeUpdateComposition_t>(
mozilla::jni::NativeStub<GeckoEditableChild::OnImeUpdateComposition_t, Impl>
::template Wrap<&Impl::OnImeUpdateComposition>),
mozilla::jni::MakeNativeMethod<GeckoEditableChild::OnKeyEvent_t>(
mozilla::jni::NativeStub<GeckoEditableChild::OnKeyEvent_t, Impl>
::template Wrap<&Impl::OnKeyEvent>)
};
template<class Impl>
class GeckoNetworkManager::Natives : public mozilla::jni::NativeImpl<GeckoNetworkManager, Impl>
{
public:
static const JNINativeMethod methods[2];
};
template<class Impl>
const JNINativeMethod GeckoNetworkManager::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoNetworkManager::OnConnectionChanged_t>(
mozilla::jni::NativeStub<GeckoNetworkManager::OnConnectionChanged_t, Impl>
::template Wrap<&Impl::OnConnectionChanged>),
mozilla::jni::MakeNativeMethod<GeckoNetworkManager::OnStatusChanged_t>(
mozilla::jni::NativeStub<GeckoNetworkManager::OnStatusChanged_t, Impl>
::template Wrap<&Impl::OnStatusChanged>)
};
template<class Impl>
class GeckoScreenOrientation::Natives : public mozilla::jni::NativeImpl<GeckoScreenOrientation, Impl>
{
public:
static const JNINativeMethod methods[1];
};
template<class Impl>
const JNINativeMethod GeckoScreenOrientation::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoScreenOrientation::OnOrientationChange_t>(
mozilla::jni::NativeStub<GeckoScreenOrientation::OnOrientationChange_t, Impl>
::template Wrap<&Impl::OnOrientationChange>)
};
template<class Impl>
class GeckoThread::Natives : public mozilla::jni::NativeImpl<GeckoThread, Impl>
{
public:
static const JNINativeMethod methods[8];
};
template<class Impl>
const JNINativeMethod GeckoThread::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoThread::Crash_t>(
mozilla::jni::NativeStub<GeckoThread::Crash_t, Impl>
::template Wrap<&Impl::Crash>),
mozilla::jni::MakeNativeMethod<GeckoThread::ForceQuit_t>(
mozilla::jni::NativeStub<GeckoThread::ForceQuit_t, Impl>
::template Wrap<&Impl::ForceQuit>),
mozilla::jni::MakeNativeMethod<GeckoThread::CreateServices_t>(
mozilla::jni::NativeStub<GeckoThread::CreateServices_t, Impl>
::template Wrap<&Impl::CreateServices>),
mozilla::jni::MakeNativeMethod<GeckoThread::OnPause_t>(
mozilla::jni::NativeStub<GeckoThread::OnPause_t, Impl>
::template Wrap<&Impl::OnPause>),
mozilla::jni::MakeNativeMethod<GeckoThread::OnResume_t>(
mozilla::jni::NativeStub<GeckoThread::OnResume_t, Impl>
::template Wrap<&Impl::OnResume>),
mozilla::jni::MakeNativeMethod<GeckoThread::RunUiThreadCallback_t>(
mozilla::jni::NativeStub<GeckoThread::RunUiThreadCallback_t, Impl>
::template Wrap<&Impl::RunUiThreadCallback>),
mozilla::jni::MakeNativeMethod<GeckoThread::SpeculativeConnect_t>(
mozilla::jni::NativeStub<GeckoThread::SpeculativeConnect_t, Impl>
::template Wrap<&Impl::SpeculativeConnect>),
mozilla::jni::MakeNativeMethod<GeckoThread::WaitOnGecko_t>(
mozilla::jni::NativeStub<GeckoThread::WaitOnGecko_t, Impl>
::template Wrap<&Impl::WaitOnGecko>)
};
template<class Impl>
class GeckoVRManager::Natives : public mozilla::jni::NativeImpl<GeckoVRManager, Impl>
{
public:
static const JNINativeMethod methods[3];
};
template<class Impl>
const JNINativeMethod GeckoVRManager::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoVRManager::CleanupGVRNonPresentingContext_t>(
mozilla::jni::NativeStub<GeckoVRManager::CleanupGVRNonPresentingContext_t, Impl>
::template Wrap<&Impl::CleanupGVRNonPresentingContext>),
mozilla::jni::MakeNativeMethod<GeckoVRManager::SetGVRPaused_t>(
mozilla::jni::NativeStub<GeckoVRManager::SetGVRPaused_t, Impl>
::template Wrap<&Impl::SetGVRPaused>),
mozilla::jni::MakeNativeMethod<GeckoVRManager::SetGVRPresentingContext_t>(
mozilla::jni::NativeStub<GeckoVRManager::SetGVRPresentingContext_t, Impl>
::template Wrap<&Impl::SetGVRPresentingContext>)
};
template<class Impl>
class PrefsHelper::Natives : public mozilla::jni::NativeImpl<PrefsHelper, Impl>
{
public:
static const JNINativeMethod methods[4];
};
template<class Impl>
const JNINativeMethod PrefsHelper::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<PrefsHelper::AddObserver_t>(
mozilla::jni::NativeStub<PrefsHelper::AddObserver_t, Impl>
::template Wrap<&Impl::AddObserver>),
mozilla::jni::MakeNativeMethod<PrefsHelper::GetPrefs_t>(
mozilla::jni::NativeStub<PrefsHelper::GetPrefs_t, Impl>
::template Wrap<&Impl::GetPrefs>),
mozilla::jni::MakeNativeMethod<PrefsHelper::RemoveObserver_t>(
mozilla::jni::NativeStub<PrefsHelper::RemoveObserver_t, Impl>
::template Wrap<&Impl::RemoveObserver>),
mozilla::jni::MakeNativeMethod<PrefsHelper::SetPref_t>(
mozilla::jni::NativeStub<PrefsHelper::SetPref_t, Impl>
::template Wrap<&Impl::SetPref>)
};
template<class Impl>
class ScreenManagerHelper::Natives : public mozilla::jni::NativeImpl<ScreenManagerHelper, Impl>
{
public:
static const JNINativeMethod methods[2];
};
template<class Impl>
const JNINativeMethod ScreenManagerHelper::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<ScreenManagerHelper::AddDisplay_t>(
mozilla::jni::NativeStub<ScreenManagerHelper::AddDisplay_t, Impl>
::template Wrap<&Impl::AddDisplay>),
mozilla::jni::MakeNativeMethod<ScreenManagerHelper::RemoveDisplay_t>(
mozilla::jni::NativeStub<ScreenManagerHelper::RemoveDisplay_t, Impl>
::template Wrap<&Impl::RemoveDisplay>)
};
template<class Impl>
class SpeechSynthesisService::Natives : public mozilla::jni::NativeImpl<SpeechSynthesisService, Impl>
{
public:
static const JNINativeMethod methods[6];
};
template<class Impl>
const JNINativeMethod SpeechSynthesisService::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<SpeechSynthesisService::DispatchBoundary_t>(
mozilla::jni::NativeStub<SpeechSynthesisService::DispatchBoundary_t, Impl>
::template Wrap<&Impl::DispatchBoundary>),
mozilla::jni::MakeNativeMethod<SpeechSynthesisService::DispatchEnd_t>(
mozilla::jni::NativeStub<SpeechSynthesisService::DispatchEnd_t, Impl>
::template Wrap<&Impl::DispatchEnd>),
mozilla::jni::MakeNativeMethod<SpeechSynthesisService::DispatchError_t>(
mozilla::jni::NativeStub<SpeechSynthesisService::DispatchError_t, Impl>
::template Wrap<&Impl::DispatchError>),
mozilla::jni::MakeNativeMethod<SpeechSynthesisService::DispatchStart_t>(
mozilla::jni::NativeStub<SpeechSynthesisService::DispatchStart_t, Impl>
::template Wrap<&Impl::DispatchStart>),
mozilla::jni::MakeNativeMethod<SpeechSynthesisService::DoneRegisteringVoices_t>(
mozilla::jni::NativeStub<SpeechSynthesisService::DoneRegisteringVoices_t, Impl>
::template Wrap<&Impl::DoneRegisteringVoices>),
mozilla::jni::MakeNativeMethod<SpeechSynthesisService::RegisterVoice_t>(
mozilla::jni::NativeStub<SpeechSynthesisService::RegisterVoice_t, Impl>
::template Wrap<&Impl::RegisterVoice>)
};
template<class Impl>
class SurfaceTextureListener::Natives : public mozilla::jni::NativeImpl<SurfaceTextureListener, Impl>
{
public:
static const JNINativeMethod methods[2];
};
template<class Impl>
const JNINativeMethod SurfaceTextureListener::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<SurfaceTextureListener::DisposeNative_t>(
mozilla::jni::NativeStub<SurfaceTextureListener::DisposeNative_t, Impl>
::template Wrap<&Impl::DisposeNative>),
mozilla::jni::MakeNativeMethod<SurfaceTextureListener::OnFrameAvailable_t>(
mozilla::jni::NativeStub<SurfaceTextureListener::OnFrameAvailable_t, Impl>
::template Wrap<&Impl::OnFrameAvailable>)
};
template<class Impl>
class LayerSession::Compositor::Natives : public mozilla::jni::NativeImpl<Compositor, Impl>
{
public:
static const JNINativeMethod methods[13];
};
template<class Impl>
const JNINativeMethod LayerSession::Compositor::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::AttachNPZC_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::AttachNPZC_t, Impl>
::template Wrap<&Impl::AttachNPZC>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::CreateCompositor_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::CreateCompositor_t, Impl>
::template Wrap<&Impl::CreateCompositor>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::DisposeNative_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::DisposeNative_t, Impl>
::template Wrap<&Impl::DisposeNative>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::EnableLayerUpdateNotifications_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::EnableLayerUpdateNotifications_t, Impl>
::template Wrap<&Impl::EnableLayerUpdateNotifications>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::OnBoundsChanged_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::OnBoundsChanged_t, Impl>
::template Wrap<&Impl::OnBoundsChanged>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::RequestScreenPixels_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::RequestScreenPixels_t, Impl>
::template Wrap<&Impl::RequestScreenPixels>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::SendToolbarAnimatorMessage_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::SendToolbarAnimatorMessage_t, Impl>
::template Wrap<&Impl::SendToolbarAnimatorMessage>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::SendToolbarPixelsToCompositor_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::SendToolbarPixelsToCompositor_t, Impl>
::template Wrap<&Impl::SendToolbarPixelsToCompositor>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::SetDefaultClearColor_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::SetDefaultClearColor_t, Impl>
::template Wrap<&Impl::SetDefaultClearColor>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::SetMaxToolbarHeight_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::SetMaxToolbarHeight_t, Impl>
::template Wrap<&Impl::SetMaxToolbarHeight>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::SetPinned_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::SetPinned_t, Impl>
::template Wrap<&Impl::SetPinned>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::SyncPauseCompositor_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::SyncPauseCompositor_t, Impl>
::template Wrap<&Impl::SyncPauseCompositor>),
mozilla::jni::MakeNativeMethod<LayerSession::Compositor::SyncResumeResizeCompositor_t>(
mozilla::jni::NativeStub<LayerSession::Compositor::SyncResumeResizeCompositor_t, Impl>
::template Wrap<&Impl::SyncResumeResizeCompositor>)
};
template<class Impl>
class PanZoomController::Natives : public mozilla::jni::NativeImpl<PanZoomController, Impl>
{
public:
static const JNINativeMethod methods[5];
};
template<class Impl>
const JNINativeMethod PanZoomController::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<PanZoomController::DisposeNative_t>(
mozilla::jni::NativeStub<PanZoomController::DisposeNative_t, Impl>
::template Wrap<&Impl::DisposeNative>),
mozilla::jni::MakeNativeMethod<PanZoomController::HandleMotionEvent_t>(
mozilla::jni::NativeStub<PanZoomController::HandleMotionEvent_t, Impl>
::template Wrap<&Impl::HandleMotionEvent>),
mozilla::jni::MakeNativeMethod<PanZoomController::HandleMouseEvent_t>(
mozilla::jni::NativeStub<PanZoomController::HandleMouseEvent_t, Impl>
::template Wrap<&Impl::HandleMouseEvent>),
mozilla::jni::MakeNativeMethod<PanZoomController::HandleScrollEvent_t>(
mozilla::jni::NativeStub<PanZoomController::HandleScrollEvent_t, Impl>
::template Wrap<&Impl::HandleScrollEvent>),
mozilla::jni::MakeNativeMethod<PanZoomController::SetIsLongpressEnabled_t>(
mozilla::jni::NativeStub<PanZoomController::SetIsLongpressEnabled_t, Impl>
::template Wrap<&Impl::SetIsLongpressEnabled>)
};
template<class Impl>
class VsyncSource::Natives : public mozilla::jni::NativeImpl<VsyncSource, Impl>
{
public:
static const JNINativeMethod methods[1];
};
template<class Impl>
const JNINativeMethod VsyncSource::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<VsyncSource::NotifyVsync_t>(
mozilla::jni::NativeStub<VsyncSource::NotifyVsync_t, Impl>
::template Wrap<&Impl::NotifyVsync>)
};
template<class Impl>
class CodecProxy::NativeCallbacks::Natives : public mozilla::jni::NativeImpl<NativeCallbacks, Impl>
{
public:
static const JNINativeMethod methods[4];
};
template<class Impl>
const JNINativeMethod CodecProxy::NativeCallbacks::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<CodecProxy::NativeCallbacks::OnError_t>(
mozilla::jni::NativeStub<CodecProxy::NativeCallbacks::OnError_t, Impl>
::template Wrap<&Impl::OnError>),
mozilla::jni::MakeNativeMethod<CodecProxy::NativeCallbacks::OnInputStatus_t>(
mozilla::jni::NativeStub<CodecProxy::NativeCallbacks::OnInputStatus_t, Impl>
::template Wrap<&Impl::OnInputStatus>),
mozilla::jni::MakeNativeMethod<CodecProxy::NativeCallbacks::OnOutput_t>(
mozilla::jni::NativeStub<CodecProxy::NativeCallbacks::OnOutput_t, Impl>
::template Wrap<&Impl::OnOutput>),
mozilla::jni::MakeNativeMethod<CodecProxy::NativeCallbacks::OnOutputFormatChanged_t>(
mozilla::jni::NativeStub<CodecProxy::NativeCallbacks::OnOutputFormatChanged_t, Impl>
::template Wrap<&Impl::OnOutputFormatChanged>)
};
template<class Impl>
class GeckoHLSDemuxerWrapper::Callbacks::Natives : public mozilla::jni::NativeImpl<Callbacks, Impl>
{
public:
static const JNINativeMethod methods[2];
};
template<class Impl>
const JNINativeMethod GeckoHLSDemuxerWrapper::Callbacks::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoHLSDemuxerWrapper::Callbacks::OnError_t>(
mozilla::jni::NativeStub<GeckoHLSDemuxerWrapper::Callbacks::OnError_t, Impl>
::template Wrap<&Impl::OnError>),
mozilla::jni::MakeNativeMethod<GeckoHLSDemuxerWrapper::Callbacks::OnInitialized_t>(
mozilla::jni::NativeStub<GeckoHLSDemuxerWrapper::Callbacks::OnInitialized_t, Impl>
::template Wrap<&Impl::OnInitialized>)
};
template<class Impl>
class GeckoHLSResourceWrapper::Callbacks::Natives : public mozilla::jni::NativeImpl<Callbacks, Impl>
{
public:
static const JNINativeMethod methods[2];
};
template<class Impl>
const JNINativeMethod GeckoHLSResourceWrapper::Callbacks::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoHLSResourceWrapper::Callbacks::OnDataArrived_t>(
mozilla::jni::NativeStub<GeckoHLSResourceWrapper::Callbacks::OnDataArrived_t, Impl>
::template Wrap<&Impl::OnDataArrived>),
mozilla::jni::MakeNativeMethod<GeckoHLSResourceWrapper::Callbacks::OnError_t>(
mozilla::jni::NativeStub<GeckoHLSResourceWrapper::Callbacks::OnError_t, Impl>
::template Wrap<&Impl::OnError>)
};
template<class Impl>
class MediaDrmProxy::NativeMediaDrmProxyCallbacks::Natives : public mozilla::jni::NativeImpl<NativeMediaDrmProxyCallbacks, Impl>
{
public:
static const JNINativeMethod methods[7];
};
template<class Impl>
const JNINativeMethod MediaDrmProxy::NativeMediaDrmProxyCallbacks::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnRejectPromise_t>(
mozilla::jni::NativeStub<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnRejectPromise_t, Impl>
::template Wrap<&Impl::OnRejectPromise>),
mozilla::jni::MakeNativeMethod<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionBatchedKeyChanged_t>(
mozilla::jni::NativeStub<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionBatchedKeyChanged_t, Impl>
::template Wrap<&Impl::OnSessionBatchedKeyChanged>),
mozilla::jni::MakeNativeMethod<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionClosed_t>(
mozilla::jni::NativeStub<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionClosed_t, Impl>
::template Wrap<&Impl::OnSessionClosed>),
mozilla::jni::MakeNativeMethod<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionCreated_t>(
mozilla::jni::NativeStub<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionCreated_t, Impl>
::template Wrap<&Impl::OnSessionCreated>),
mozilla::jni::MakeNativeMethod<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionError_t>(
mozilla::jni::NativeStub<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionError_t, Impl>
::template Wrap<&Impl::OnSessionError>),
mozilla::jni::MakeNativeMethod<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionMessage_t>(
mozilla::jni::NativeStub<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionMessage_t, Impl>
::template Wrap<&Impl::OnSessionMessage>),
mozilla::jni::MakeNativeMethod<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionUpdated_t>(
mozilla::jni::NativeStub<MediaDrmProxy::NativeMediaDrmProxyCallbacks::OnSessionUpdated_t, Impl>
::template Wrap<&Impl::OnSessionUpdated>)
};
template<class Impl>
class GeckoProcessManager::Natives : public mozilla::jni::NativeImpl<GeckoProcessManager, Impl>
{
public:
static const JNINativeMethod methods[1];
};
template<class Impl>
const JNINativeMethod GeckoProcessManager::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoProcessManager::GetEditableParent_t>(
mozilla::jni::NativeStub<GeckoProcessManager::GetEditableParent_t, Impl>
::template Wrap<&Impl::GetEditableParent>)
};
template<class Impl>
class GeckoSession::Window::Natives : public mozilla::jni::NativeImpl<Window, Impl>
{
public:
static const JNINativeMethod methods[5];
};
template<class Impl>
const JNINativeMethod GeckoSession::Window::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoSession::Window::AttachEditable_t>(
mozilla::jni::NativeStub<GeckoSession::Window::AttachEditable_t, Impl>
::template Wrap<&Impl::AttachEditable>),
mozilla::jni::MakeNativeMethod<GeckoSession::Window::Close_t>(
mozilla::jni::NativeStub<GeckoSession::Window::Close_t, Impl>
::template Wrap<&Impl::Close>),
mozilla::jni::MakeNativeMethod<GeckoSession::Window::DisposeNative_t>(
mozilla::jni::NativeStub<GeckoSession::Window::DisposeNative_t, Impl>
::template Wrap<&Impl::DisposeNative>),
mozilla::jni::MakeNativeMethod<GeckoSession::Window::Transfer_t>(
mozilla::jni::NativeStub<GeckoSession::Window::Transfer_t, Impl>
::template Wrap<&Impl::Transfer>),
mozilla::jni::MakeNativeMethod<GeckoSession::Window::Open_t>(
mozilla::jni::NativeStub<GeckoSession::Window::Open_t, Impl>
::template Wrap<&Impl::Open>)
};
} /* java */
} /* mozilla */
#endif // GeneratedJNINatives_h

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -1,134 +0,0 @@
// GENERATED CODE
// Generated by the Java program at /build/annotationProcessors at compile time
// from annotations on Java methods. To update, change the annotations on the
// corresponding Java methods and rerun the build. Manually updating this file
// will cause your build to fail.
#ifndef FennecJNINatives_h
#define FennecJNINatives_h
#ifndef MOZ_PREPROCESSOR
#include "FennecJNIWrappers.h"
#include "mozilla/jni/Natives.h"
#endif
namespace mozilla {
namespace java {
template<class Impl>
class ANRReporter::Natives : public mozilla::jni::NativeImpl<ANRReporter, Impl>
{
public:
static const JNINativeMethod methods[3];
};
template<class Impl>
const JNINativeMethod ANRReporter::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<ANRReporter::GetNativeStack_t>(
mozilla::jni::NativeStub<ANRReporter::GetNativeStack_t, Impl>
::template Wrap<&Impl::GetNativeStack>),
mozilla::jni::MakeNativeMethod<ANRReporter::ReleaseNativeStack_t>(
mozilla::jni::NativeStub<ANRReporter::ReleaseNativeStack_t, Impl>
::template Wrap<&Impl::ReleaseNativeStack>),
mozilla::jni::MakeNativeMethod<ANRReporter::RequestNativeStack_t>(
mozilla::jni::NativeStub<ANRReporter::RequestNativeStack_t, Impl>
::template Wrap<&Impl::RequestNativeStack>)
};
template<class Impl>
class BrowserLocaleManager::Natives : public mozilla::jni::NativeImpl<BrowserLocaleManager, Impl>
{
public:
static const JNINativeMethod methods[1];
};
template<class Impl>
const JNINativeMethod BrowserLocaleManager::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<BrowserLocaleManager::RefreshLocales_t>(
mozilla::jni::NativeStub<BrowserLocaleManager::RefreshLocales_t, Impl>
::template Wrap<&Impl::RefreshLocales>)
};
template<class Impl>
class GeckoJavaSampler::Natives : public mozilla::jni::NativeImpl<GeckoJavaSampler, Impl>
{
public:
static const JNINativeMethod methods[1];
};
template<class Impl>
const JNINativeMethod GeckoJavaSampler::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<GeckoJavaSampler::GetProfilerTime_t>(
mozilla::jni::NativeStub<GeckoJavaSampler::GetProfilerTime_t, Impl>
::template Wrap<&Impl::GetProfilerTime>)
};
template<class Impl>
class MemoryMonitor::Natives : public mozilla::jni::NativeImpl<MemoryMonitor, Impl>
{
public:
static const JNINativeMethod methods[1];
};
template<class Impl>
const JNINativeMethod MemoryMonitor::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<MemoryMonitor::DispatchMemoryPressure_t>(
mozilla::jni::NativeStub<MemoryMonitor::DispatchMemoryPressure_t, Impl>
::template Wrap<&Impl::DispatchMemoryPressure>)
};
template<class Impl>
class Telemetry::Natives : public mozilla::jni::NativeImpl<Telemetry, Impl>
{
public:
static const JNINativeMethod methods[5];
};
template<class Impl>
const JNINativeMethod Telemetry::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<Telemetry::AddHistogram_t>(
mozilla::jni::NativeStub<Telemetry::AddHistogram_t, Impl>
::template Wrap<&Impl::AddHistogram>),
mozilla::jni::MakeNativeMethod<Telemetry::AddKeyedHistogram_t>(
mozilla::jni::NativeStub<Telemetry::AddKeyedHistogram_t, Impl>
::template Wrap<&Impl::AddKeyedHistogram>),
mozilla::jni::MakeNativeMethod<Telemetry::AddUIEvent_t>(
mozilla::jni::NativeStub<Telemetry::AddUIEvent_t, Impl>
::template Wrap<&Impl::AddUIEvent>),
mozilla::jni::MakeNativeMethod<Telemetry::StartUISession_t>(
mozilla::jni::NativeStub<Telemetry::StartUISession_t, Impl>
::template Wrap<&Impl::StartUISession>),
mozilla::jni::MakeNativeMethod<Telemetry::StopUISession_t>(
mozilla::jni::NativeStub<Telemetry::StopUISession_t, Impl>
::template Wrap<&Impl::StopUISession>)
};
template<class Impl>
class ThumbnailHelper::Natives : public mozilla::jni::NativeImpl<ThumbnailHelper, Impl>
{
public:
static const JNINativeMethod methods[1];
};
template<class Impl>
const JNINativeMethod ThumbnailHelper::Natives<Impl>::methods[] = {
mozilla::jni::MakeNativeMethod<ThumbnailHelper::RequestThumbnail_t>(
mozilla::jni::NativeStub<ThumbnailHelper::RequestThumbnail_t, Impl>
::template Wrap<&Impl::RequestThumbnail>)
};
} /* java */
} /* mozilla */
#endif // FennecJNINatives_h

@ -1,248 +0,0 @@
// GENERATED CODE
// Generated by the Java program at /build/annotationProcessors at compile time
// from annotations on Java methods. To update, change the annotations on the
// corresponding Java methods and rerun the build. Manually updating this file
// will cause your build to fail.
#ifndef MOZ_PREPROCESSOR
#include "FennecJNIWrappers.h"
#include "mozilla/jni/Accessors.h"
#endif
namespace mozilla {
namespace java {
const char ANRReporter::name[] =
"org/mozilla/gecko/ANRReporter";
constexpr char ANRReporter::GetNativeStack_t::name[];
constexpr char ANRReporter::GetNativeStack_t::signature[];
constexpr char ANRReporter::ReleaseNativeStack_t::name[];
constexpr char ANRReporter::ReleaseNativeStack_t::signature[];
constexpr char ANRReporter::RequestNativeStack_t::name[];
constexpr char ANRReporter::RequestNativeStack_t::signature[];
const char BrowserLocaleManager::name[] =
"org/mozilla/gecko/BrowserLocaleManager";
constexpr char BrowserLocaleManager::GetLocale_t::name[];
constexpr char BrowserLocaleManager::GetLocale_t::signature[];
auto BrowserLocaleManager::GetLocale() -> mozilla::jni::String::LocalRef
{
return mozilla::jni::Method<GetLocale_t>::Call(BrowserLocaleManager::Context(), nullptr);
}
constexpr char BrowserLocaleManager::RefreshLocales_t::name[];
constexpr char BrowserLocaleManager::RefreshLocales_t::signature[];
const char DownloadsIntegration::name[] =
"org/mozilla/gecko/DownloadsIntegration";
constexpr char DownloadsIntegration::GetTemporaryDownloadDirectory_t::name[];
constexpr char DownloadsIntegration::GetTemporaryDownloadDirectory_t::signature[];
auto DownloadsIntegration::GetTemporaryDownloadDirectory() -> mozilla::jni::String::LocalRef
{
return mozilla::jni::Method<GetTemporaryDownloadDirectory_t>::Call(DownloadsIntegration::Context(), nullptr);
}
constexpr char DownloadsIntegration::ScanMedia_t::name[];
constexpr char DownloadsIntegration::ScanMedia_t::signature[];
auto DownloadsIntegration::ScanMedia(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1) -> void
{
return mozilla::jni::Method<ScanMedia_t>::Call(DownloadsIntegration::Context(), nullptr, a0, a1);
}
const char GeckoApp::name[] =
"org/mozilla/gecko/GeckoApp";
constexpr char GeckoApp::LaunchOrBringToFront_t::name[];
constexpr char GeckoApp::LaunchOrBringToFront_t::signature[];
auto GeckoApp::LaunchOrBringToFront() -> void
{
return mozilla::jni::Method<LaunchOrBringToFront_t>::Call(GeckoApp::Context(), nullptr);
}
const char GeckoApplication::name[] =
"org/mozilla/gecko/GeckoApplication";
constexpr char GeckoApplication::CreateShortcut_t::name[];
constexpr char GeckoApplication::CreateShortcut_t::signature[];
auto GeckoApplication::CreateShortcut(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1) -> void
{
return mozilla::jni::Method<CreateShortcut_t>::Call(GeckoApplication::Context(), nullptr, a0, a1);
}
const char GeckoJavaSampler::name[] =
"org/mozilla/gecko/GeckoJavaSampler";
constexpr char GeckoJavaSampler::GetFrameName_t::name[];
constexpr char GeckoJavaSampler::GetFrameName_t::signature[];
auto GeckoJavaSampler::GetFrameName(int32_t a0, int32_t a1, int32_t a2) -> mozilla::jni::String::LocalRef
{
return mozilla::jni::Method<GetFrameName_t>::Call(GeckoJavaSampler::Context(), nullptr, a0, a1, a2);
}
constexpr char GeckoJavaSampler::GetProfilerTime_t::name[];
constexpr char GeckoJavaSampler::GetProfilerTime_t::signature[];
constexpr char GeckoJavaSampler::GetSampleTime_t::name[];
constexpr char GeckoJavaSampler::GetSampleTime_t::signature[];
auto GeckoJavaSampler::GetSampleTime(int32_t a0, int32_t a1) -> double
{
return mozilla::jni::Method<GetSampleTime_t>::Call(GeckoJavaSampler::Context(), nullptr, a0, a1);
}
constexpr char GeckoJavaSampler::GetThreadName_t::name[];
constexpr char GeckoJavaSampler::GetThreadName_t::signature[];
auto GeckoJavaSampler::GetThreadName(int32_t a0) -> mozilla::jni::String::LocalRef
{
return mozilla::jni::Method<GetThreadName_t>::Call(GeckoJavaSampler::Context(), nullptr, a0);
}
constexpr char GeckoJavaSampler::Pause_t::name[];
constexpr char GeckoJavaSampler::Pause_t::signature[];
auto GeckoJavaSampler::Pause() -> void
{
return mozilla::jni::Method<Pause_t>::Call(GeckoJavaSampler::Context(), nullptr);
}
constexpr char GeckoJavaSampler::Start_t::name[];
constexpr char GeckoJavaSampler::Start_t::signature[];
auto GeckoJavaSampler::Start(int32_t a0, int32_t a1) -> void
{
return mozilla::jni::Method<Start_t>::Call(GeckoJavaSampler::Context(), nullptr, a0, a1);
}
constexpr char GeckoJavaSampler::Stop_t::name[];
constexpr char GeckoJavaSampler::Stop_t::signature[];
auto GeckoJavaSampler::Stop() -> void
{
return mozilla::jni::Method<Stop_t>::Call(GeckoJavaSampler::Context(), nullptr);
}
constexpr char GeckoJavaSampler::Unpause_t::name[];
constexpr char GeckoJavaSampler::Unpause_t::signature[];
auto GeckoJavaSampler::Unpause() -> void
{
return mozilla::jni::Method<Unpause_t>::Call(GeckoJavaSampler::Context(), nullptr);
}
const char GlobalHistory::name[] =
"org/mozilla/gecko/GlobalHistory";
constexpr char GlobalHistory::CheckURIVisited_t::name[];
constexpr char GlobalHistory::CheckURIVisited_t::signature[];
auto GlobalHistory::CheckURIVisited(mozilla::jni::String::Param a0) -> void
{
return mozilla::jni::Method<CheckURIVisited_t>::Call(GlobalHistory::Context(), nullptr, a0);
}
constexpr char GlobalHistory::MarkURIVisited_t::name[];
constexpr char GlobalHistory::MarkURIVisited_t::signature[];
auto GlobalHistory::MarkURIVisited(mozilla::jni::String::Param a0) -> void
{
return mozilla::jni::Method<MarkURIVisited_t>::Call(GlobalHistory::Context(), nullptr, a0);
}
constexpr char GlobalHistory::SetURITitle_t::name[];
constexpr char GlobalHistory::SetURITitle_t::signature[];
auto GlobalHistory::SetURITitle(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1) -> void
{
return mozilla::jni::Method<SetURITitle_t>::Call(GlobalHistory::Context(), nullptr, a0, a1);
}
const char MemoryMonitor::name[] =
"org/mozilla/gecko/MemoryMonitor";
constexpr char MemoryMonitor::DispatchMemoryPressure_t::name[];
constexpr char MemoryMonitor::DispatchMemoryPressure_t::signature[];
const char Telemetry::name[] =
"org/mozilla/gecko/Telemetry";
constexpr char Telemetry::AddHistogram_t::name[];
constexpr char Telemetry::AddHistogram_t::signature[];
constexpr char Telemetry::AddKeyedHistogram_t::name[];
constexpr char Telemetry::AddKeyedHistogram_t::signature[];
constexpr char Telemetry::AddUIEvent_t::name[];
constexpr char Telemetry::AddUIEvent_t::signature[];
constexpr char Telemetry::StartUISession_t::name[];
constexpr char Telemetry::StartUISession_t::signature[];
constexpr char Telemetry::StopUISession_t::name[];
constexpr char Telemetry::StopUISession_t::signature[];
const char ThumbnailHelper::name[] =
"org/mozilla/gecko/ThumbnailHelper";
constexpr char ThumbnailHelper::NotifyThumbnail_t::name[];
constexpr char ThumbnailHelper::NotifyThumbnail_t::signature[];
auto ThumbnailHelper::NotifyThumbnail(mozilla::jni::ByteBuffer::Param a0, mozilla::jni::Object::Param a1, bool a2, bool a3) -> void
{
return mozilla::jni::Method<NotifyThumbnail_t>::Call(ThumbnailHelper::Context(), nullptr, a0, a1, a2, a3);
}
constexpr char ThumbnailHelper::RequestThumbnail_t::name[];
constexpr char ThumbnailHelper::RequestThumbnail_t::signature[];
const char AudioFocusAgent::name[] =
"org/mozilla/gecko/media/AudioFocusAgent";
constexpr char AudioFocusAgent::NotifyStartedPlaying_t::name[];
constexpr char AudioFocusAgent::NotifyStartedPlaying_t::signature[];
auto AudioFocusAgent::NotifyStartedPlaying() -> void
{
return mozilla::jni::Method<NotifyStartedPlaying_t>::Call(AudioFocusAgent::Context(), nullptr);
}
constexpr char AudioFocusAgent::NotifyStoppedPlaying_t::name[];
constexpr char AudioFocusAgent::NotifyStoppedPlaying_t::signature[];
auto AudioFocusAgent::NotifyStoppedPlaying() -> void
{
return mozilla::jni::Method<NotifyStoppedPlaying_t>::Call(AudioFocusAgent::Context(), nullptr);
}
const char Restrictions::name[] =
"org/mozilla/gecko/restrictions/Restrictions";
constexpr char Restrictions::IsAllowed_t::name[];
constexpr char Restrictions::IsAllowed_t::signature[];
auto Restrictions::IsAllowed(int32_t a0, mozilla::jni::String::Param a1) -> bool
{
return mozilla::jni::Method<IsAllowed_t>::Call(Restrictions::Context(), nullptr, a0, a1);
}
constexpr char Restrictions::IsUserRestricted_t::name[];
constexpr char Restrictions::IsUserRestricted_t::signature[];
auto Restrictions::IsUserRestricted() -> bool
{
return mozilla::jni::Method<IsUserRestricted_t>::Call(Restrictions::Context(), nullptr);
}
} /* java */
} /* mozilla */

@ -1,795 +0,0 @@
// GENERATED CODE
// Generated by the Java program at /build/annotationProcessors at compile time
// from annotations on Java methods. To update, change the annotations on the
// corresponding Java methods and rerun the build. Manually updating this file
// will cause your build to fail.
#ifndef FennecJNIWrappers_h
#define FennecJNIWrappers_h
#ifndef MOZ_PREPROCESSOR
#include "mozilla/jni/Refs.h"
#endif
namespace mozilla {
namespace java {
class ANRReporter : public mozilla::jni::ObjectBase<ANRReporter>
{
public:
static const char name[];
explicit ANRReporter(const Context& ctx) : ObjectBase<ANRReporter>(ctx) {}
struct GetNativeStack_t {
typedef ANRReporter Owner;
typedef mozilla::jni::String::LocalRef ReturnType;
typedef mozilla::jni::String::Param SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "getNativeStack";
static constexpr char signature[] =
"()Ljava/lang/String;";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
struct ReleaseNativeStack_t {
typedef ANRReporter Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "releaseNativeStack";
static constexpr char signature[] =
"()V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
struct RequestNativeStack_t {
typedef ANRReporter Owner;
typedef bool ReturnType;
typedef bool SetterType;
typedef mozilla::jni::Args<
bool> Args;
static constexpr char name[] = "requestNativeStack";
static constexpr char signature[] =
"(Z)Z";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
template<class Impl> class Natives;
};
class BrowserLocaleManager : public mozilla::jni::ObjectBase<BrowserLocaleManager>
{
public:
static const char name[];
explicit BrowserLocaleManager(const Context& ctx) : ObjectBase<BrowserLocaleManager>(ctx) {}
struct GetLocale_t {
typedef BrowserLocaleManager Owner;
typedef mozilla::jni::String::LocalRef ReturnType;
typedef mozilla::jni::String::Param SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "getLocale";
static constexpr char signature[] =
"()Ljava/lang/String;";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto GetLocale() -> mozilla::jni::String::LocalRef;
struct RefreshLocales_t {
typedef BrowserLocaleManager Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "refreshLocales";
static constexpr char signature[] =
"()V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::GECKO;
};
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
template<class Impl> class Natives;
};
class DownloadsIntegration : public mozilla::jni::ObjectBase<DownloadsIntegration>
{
public:
static const char name[];
explicit DownloadsIntegration(const Context& ctx) : ObjectBase<DownloadsIntegration>(ctx) {}
struct GetTemporaryDownloadDirectory_t {
typedef DownloadsIntegration Owner;
typedef mozilla::jni::String::LocalRef ReturnType;
typedef mozilla::jni::String::Param SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "getTemporaryDownloadDirectory";
static constexpr char signature[] =
"()Ljava/lang/String;";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto GetTemporaryDownloadDirectory() -> mozilla::jni::String::LocalRef;
struct ScanMedia_t {
typedef DownloadsIntegration Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param,
mozilla::jni::String::Param> Args;
static constexpr char name[] = "scanMedia";
static constexpr char signature[] =
"(Ljava/lang/String;Ljava/lang/String;)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto ScanMedia(mozilla::jni::String::Param, mozilla::jni::String::Param) -> void;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
};
class GeckoApp : public mozilla::jni::ObjectBase<GeckoApp>
{
public:
static const char name[];
explicit GeckoApp(const Context& ctx) : ObjectBase<GeckoApp>(ctx) {}
struct LaunchOrBringToFront_t {
typedef GeckoApp Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "launchOrBringToFront";
static constexpr char signature[] =
"()V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto LaunchOrBringToFront() -> void;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
};
class GeckoApplication : public mozilla::jni::ObjectBase<GeckoApplication>
{
public:
static const char name[];
explicit GeckoApplication(const Context& ctx) : ObjectBase<GeckoApplication>(ctx) {}
struct CreateShortcut_t {
typedef GeckoApplication Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param,
mozilla::jni::String::Param> Args;
static constexpr char name[] = "createShortcut";
static constexpr char signature[] =
"(Ljava/lang/String;Ljava/lang/String;)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto CreateShortcut(mozilla::jni::String::Param, mozilla::jni::String::Param) -> void;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
};
class GeckoJavaSampler : public mozilla::jni::ObjectBase<GeckoJavaSampler>
{
public:
static const char name[];
explicit GeckoJavaSampler(const Context& ctx) : ObjectBase<GeckoJavaSampler>(ctx) {}
struct GetFrameName_t {
typedef GeckoJavaSampler Owner;
typedef mozilla::jni::String::LocalRef ReturnType;
typedef mozilla::jni::String::Param SetterType;
typedef mozilla::jni::Args<
int32_t,
int32_t,
int32_t> Args;
static constexpr char name[] = "getFrameName";
static constexpr char signature[] =
"(III)Ljava/lang/String;";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto GetFrameName(int32_t, int32_t, int32_t) -> mozilla::jni::String::LocalRef;
struct GetProfilerTime_t {
typedef GeckoJavaSampler Owner;
typedef double ReturnType;
typedef double SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "getProfilerTime";
static constexpr char signature[] =
"()D";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
struct GetSampleTime_t {
typedef GeckoJavaSampler Owner;
typedef double ReturnType;
typedef double SetterType;
typedef mozilla::jni::Args<
int32_t,
int32_t> Args;
static constexpr char name[] = "getSampleTime";
static constexpr char signature[] =
"(II)D";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto GetSampleTime(int32_t, int32_t) -> double;
struct GetThreadName_t {
typedef GeckoJavaSampler Owner;
typedef mozilla::jni::String::LocalRef ReturnType;
typedef mozilla::jni::String::Param SetterType;
typedef mozilla::jni::Args<
int32_t> Args;
static constexpr char name[] = "getThreadName";
static constexpr char signature[] =
"(I)Ljava/lang/String;";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto GetThreadName(int32_t) -> mozilla::jni::String::LocalRef;
struct Pause_t {
typedef GeckoJavaSampler Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "pause";
static constexpr char signature[] =
"()V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto Pause() -> void;
struct Start_t {
typedef GeckoJavaSampler Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
int32_t,
int32_t> Args;
static constexpr char name[] = "start";
static constexpr char signature[] =
"(II)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto Start(int32_t, int32_t) -> void;
struct Stop_t {
typedef GeckoJavaSampler Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "stop";
static constexpr char signature[] =
"()V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto Stop() -> void;
struct Unpause_t {
typedef GeckoJavaSampler Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "unpause";
static constexpr char signature[] =
"()V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto Unpause() -> void;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
template<class Impl> class Natives;
};
class GlobalHistory : public mozilla::jni::ObjectBase<GlobalHistory>
{
public:
static const char name[];
explicit GlobalHistory(const Context& ctx) : ObjectBase<GlobalHistory>(ctx) {}
struct CheckURIVisited_t {
typedef GlobalHistory Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param> Args;
static constexpr char name[] = "checkUriVisited";
static constexpr char signature[] =
"(Ljava/lang/String;)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto CheckURIVisited(mozilla::jni::String::Param) -> void;
struct MarkURIVisited_t {
typedef GlobalHistory Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param> Args;
static constexpr char name[] = "markUriVisited";
static constexpr char signature[] =
"(Ljava/lang/String;)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto MarkURIVisited(mozilla::jni::String::Param) -> void;
struct SetURITitle_t {
typedef GlobalHistory Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param,
mozilla::jni::String::Param> Args;
static constexpr char name[] = "setUriTitle";
static constexpr char signature[] =
"(Ljava/lang/String;Ljava/lang/String;)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto SetURITitle(mozilla::jni::String::Param, mozilla::jni::String::Param) -> void;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
};
class MemoryMonitor : public mozilla::jni::ObjectBase<MemoryMonitor>
{
public:
static const char name[];
explicit MemoryMonitor(const Context& ctx) : ObjectBase<MemoryMonitor>(ctx) {}
struct DispatchMemoryPressure_t {
typedef MemoryMonitor Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "dispatchMemoryPressure";
static constexpr char signature[] =
"()V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::UI;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::UI;
template<class Impl> class Natives;
};
class Telemetry : public mozilla::jni::ObjectBase<Telemetry>
{
public:
static const char name[];
explicit Telemetry(const Context& ctx) : ObjectBase<Telemetry>(ctx) {}
struct AddHistogram_t {
typedef Telemetry Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param,
int32_t> Args;
static constexpr char name[] = "nativeAddHistogram";
static constexpr char signature[] =
"(Ljava/lang/String;I)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::GECKO;
};
struct AddKeyedHistogram_t {
typedef Telemetry Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param,
mozilla::jni::String::Param,
int32_t> Args;
static constexpr char name[] = "nativeAddKeyedHistogram";
static constexpr char signature[] =
"(Ljava/lang/String;Ljava/lang/String;I)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::GECKO;
};
struct AddUIEvent_t {
typedef Telemetry Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param,
mozilla::jni::String::Param,
int64_t,
mozilla::jni::String::Param> Args;
static constexpr char name[] = "nativeAddUiEvent";
static constexpr char signature[] =
"(Ljava/lang/String;Ljava/lang/String;JLjava/lang/String;)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::GECKO;
};
struct StartUISession_t {
typedef Telemetry Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param,
int64_t> Args;
static constexpr char name[] = "nativeStartUiSession";
static constexpr char signature[] =
"(Ljava/lang/String;J)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::GECKO;
};
struct StopUISession_t {
typedef Telemetry Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::String::Param,
mozilla::jni::String::Param,
int64_t> Args;
static constexpr char name[] = "nativeStopUiSession";
static constexpr char signature[] =
"(Ljava/lang/String;Ljava/lang/String;J)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::GECKO;
};
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
template<class Impl> class Natives;
};
class ThumbnailHelper : public mozilla::jni::ObjectBase<ThumbnailHelper>
{
public:
static const char name[];
explicit ThumbnailHelper(const Context& ctx) : ObjectBase<ThumbnailHelper>(ctx) {}
struct NotifyThumbnail_t {
typedef ThumbnailHelper Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::ByteBuffer::Param,
mozilla::jni::Object::Param,
bool,
bool> Args;
static constexpr char name[] = "notifyThumbnail";
static constexpr char signature[] =
"(Ljava/nio/ByteBuffer;Lorg/mozilla/gecko/Tab;ZZ)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto NotifyThumbnail(mozilla::jni::ByteBuffer::Param, mozilla::jni::Object::Param, bool, bool) -> void;
struct RequestThumbnail_t {
typedef ThumbnailHelper Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<
mozilla::jni::ByteBuffer::Param,
mozilla::jni::Object::Param,
int32_t,
int32_t,
int32_t> Args;
static constexpr char name[] = "requestThumbnailLocked";
static constexpr char signature[] =
"(Ljava/nio/ByteBuffer;Lorg/mozilla/gecko/Tab;III)V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::PROXY;
};
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::ANY;
template<class Impl> class Natives;
};
class AudioFocusAgent : public mozilla::jni::ObjectBase<AudioFocusAgent>
{
public:
static const char name[];
explicit AudioFocusAgent(const Context& ctx) : ObjectBase<AudioFocusAgent>(ctx) {}
struct NotifyStartedPlaying_t {
typedef AudioFocusAgent Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "notifyStartedPlaying";
static constexpr char signature[] =
"()V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto NotifyStartedPlaying() -> void;
struct NotifyStoppedPlaying_t {
typedef AudioFocusAgent Owner;
typedef void ReturnType;
typedef void SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "notifyStoppedPlaying";
static constexpr char signature[] =
"()V";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto NotifyStoppedPlaying() -> void;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
};
class Restrictions : public mozilla::jni::ObjectBase<Restrictions>
{
public:
static const char name[];
explicit Restrictions(const Context& ctx) : ObjectBase<Restrictions>(ctx) {}
struct IsAllowed_t {
typedef Restrictions Owner;
typedef bool ReturnType;
typedef bool SetterType;
typedef mozilla::jni::Args<
int32_t,
mozilla::jni::String::Param> Args;
static constexpr char name[] = "isAllowed";
static constexpr char signature[] =
"(ILjava/lang/String;)Z";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto IsAllowed(int32_t, mozilla::jni::String::Param) -> bool;
struct IsUserRestricted_t {
typedef Restrictions Owner;
typedef bool ReturnType;
typedef bool SetterType;
typedef mozilla::jni::Args<> Args;
static constexpr char name[] = "isUserRestricted";
static constexpr char signature[] =
"()Z";
static const bool isStatic = true;
static const mozilla::jni::ExceptionMode exceptionMode =
mozilla::jni::ExceptionMode::ABORT;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
static const mozilla::jni::DispatchTarget dispatchTarget =
mozilla::jni::DispatchTarget::CURRENT;
};
static auto IsUserRestricted() -> bool;
static const mozilla::jni::CallingThread callingThread =
mozilla::jni::CallingThread::GECKO;
};
} /* java */
} /* mozilla */
#endif // FennecJNIWrappers_h

@ -8,14 +8,26 @@ with Files("**"):
BUG_COMPONENT = ("Firefox for Android", "GeckoView")
EXPORTS += [
'FennecJNINatives.h',
'FennecJNIWrappers.h',
'!FennecJNINatives.h',
'!FennecJNIWrappers.h',
]
UNIFIED_SOURCES += [
'FennecJNIWrappers.cpp',
SOURCES += [
'!FennecJNIWrappers.cpp',
]
# The recursive make backend treats the first output specially: it's passed as
# an open FileAvoidWrite to the invoked script. That doesn't work well with
# the Gradle task that generates all of the outputs, so we add a dummy first
# output.
t = ('fennec_jni_wrappers',
'FennecJNINatives.h',
'FennecJNIWrappers.h',
'FennecJNIWrappers.cpp')
GENERATED_FILES += [t]
GENERATED_FILES[t].script = '/mobile/android/gradle.py:generate_fennec_jni_wrappers'
FINAL_LIBRARY = 'xul'
LOCAL_INCLUDES += [

@ -24,8 +24,11 @@ XPIDL_MODULE = 'widget_android'
EXPORTS += [
'AndroidBridge.h',
'GeneratedJNINatives.h',
'GeneratedJNIWrappers.h',
]
EXPORTS += [
'!GeneratedJNINatives.h',
'!GeneratedJNIWrappers.h',
]
EXPORTS.mozilla.widget += [
@ -33,6 +36,10 @@ EXPORTS.mozilla.widget += [
'AndroidUiThread.h',
]
SOURCES += [
'!GeneratedJNIWrappers.cpp',
]
UNIFIED_SOURCES += [
'AndroidAlerts.cpp',
'AndroidBridge.cpp',
@ -42,7 +49,6 @@ UNIFIED_SOURCES += [
'ANRReporter.cpp',
'EventDispatcher.cpp',
'GeckoEditableSupport.cpp',
'GeneratedJNIWrappers.cpp',
'GfxInfo.cpp',
'nsAndroidProtocolHandler.cpp',
'nsAppShell.cpp',
@ -59,6 +65,18 @@ UNIFIED_SOURCES += [
include('/ipc/chromium/chromium-config.mozbuild')
# The recursive make backend treats the first output specially: it's passed as
# an open FileAvoidWrite to the invoked script. That doesn't work well with
# the Gradle task that generates all of the outputs, so we add a dummy first
# output.
t = ('generated_jni_wrappers',
'GeneratedJNINatives.h',
'GeneratedJNIWrappers.h',
'GeneratedJNIWrappers.cpp')
GENERATED_FILES += [t]
GENERATED_FILES[t].script = '/mobile/android/gradle.py:generate_generated_jni_wrappers'
FINAL_LIBRARY = 'xul'
LOCAL_INCLUDES += [