2013-11-19 19:56:09 +04:00
|
|
|
// GENERATED CODE
|
2015-01-10 03:33:57 +03:00
|
|
|
// Generated by the Java program at /build/annotationProcessors at compile time
|
|
|
|
// from annotations on Java methods. To update, change the annotations on the
|
2015-07-11 06:41:36 +03:00
|
|
|
// corresponding Java methods and rerun the build. Manually updating this file
|
2015-01-10 03:33:57 +03:00
|
|
|
// will cause your build to fail.
|
2013-11-12 22:41:00 +04:00
|
|
|
|
2015-07-11 06:41:36 +03:00
|
|
|
#ifndef GeneratedJNIWrappers_h
|
|
|
|
#define GeneratedJNIWrappers_h
|
2013-11-12 22:41:00 +04:00
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
#include "mozilla/jni/Refs.h"
|
2013-11-12 22:41:00 +04:00
|
|
|
|
|
|
|
namespace mozilla {
|
2016-07-21 20:49:04 +03:00
|
|
|
namespace java {
|
2013-11-12 22:41:00 +04:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class AlarmReceiver : public mozilla::jni::ObjectBase<AlarmReceiver>
|
2015-10-01 20:40:53 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit AlarmReceiver(const Context& ctx) : ObjectBase<AlarmReceiver>(ctx) {}
|
2015-10-01 20:40:53 +03:00
|
|
|
|
|
|
|
struct NotifyAlarmFired_t {
|
|
|
|
typedef AlarmReceiver Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "notifyAlarmFired";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2015-10-01 20:40:53 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-10-01 20:40:53 +03:00
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class AndroidGamepadManager : public mozilla::jni::ObjectBase<AndroidGamepadManager>
|
2016-08-04 16:16:05 +03:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit AndroidGamepadManager(const Context& ctx) : ObjectBase<AndroidGamepadManager>(ctx) {}
|
2016-08-04 16:16:05 +03:00
|
|
|
|
|
|
|
struct OnAxisChange_t {
|
|
|
|
typedef AndroidGamepadManager Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
mozilla::jni::BooleanArray::Param,
|
|
|
|
mozilla::jni::FloatArray::Param> Args;
|
|
|
|
static constexpr char name[] = "onAxisChange";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I[Z[F)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-08-04 16:16:05 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct OnButtonChange_t {
|
|
|
|
typedef AndroidGamepadManager Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
bool,
|
|
|
|
float> Args;
|
|
|
|
static constexpr char name[] = "onButtonChange";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IIZF)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-08-04 16:16:05 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct OnGamepadAdded_t {
|
|
|
|
typedef AndroidGamepadManager Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "onGamepadAdded";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(II)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-08-04 16:16:05 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto OnGamepadAdded(int32_t, int32_t) -> void;
|
|
|
|
|
|
|
|
struct OnGamepadChange_t {
|
|
|
|
typedef AndroidGamepadManager Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
bool> Args;
|
|
|
|
static constexpr char name[] = "onGamepadChange";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IZ)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-08-04 16:16:05 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct Start_t {
|
|
|
|
typedef AndroidGamepadManager Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "start";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-08-04 16:16:05 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto Start() -> void;
|
|
|
|
|
|
|
|
struct Stop_t {
|
|
|
|
typedef AndroidGamepadManager 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;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-08-04 16:16:05 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto Stop() -> void;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-08-04 16:16:05 +03:00
|
|
|
|
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
class EventDispatcher : public mozilla::jni::ObjectBase<EventDispatcher>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit EventDispatcher(const Context& ctx) : ObjectBase<EventDispatcher>(ctx) {}
|
|
|
|
|
|
|
|
class NativeCallbackDelegate;
|
|
|
|
|
|
|
|
struct DispatchToGecko_t {
|
|
|
|
typedef EventDispatcher Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::Object::Param,
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "dispatchToGecko";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;Lorg/mozilla/gecko/util/GeckoBundle;Lorg/mozilla/gecko/util/EventCallback;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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 DispatchToThreads_t {
|
|
|
|
typedef EventDispatcher Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::Object::Param,
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "dispatchToThreads";
|
|
|
|
static constexpr char signature[] =
|
2017-02-02 01:35:45 +03:00
|
|
|
"(Ljava/lang/String;Lorg/mozilla/gecko/util/GeckoBundle;Lorg/mozilla/gecko/util/EventCallback;)Z";
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
2017-02-02 01:35:45 +03:00
|
|
|
auto DispatchToThreads(mozilla::jni::String::Param, mozilla::jni::Object::Param, mozilla::jni::Object::Param) const -> bool;
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
|
|
|
|
struct DisposeNative_t {
|
|
|
|
typedef EventDispatcher Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "disposeNative";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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 GetInstance_t {
|
|
|
|
typedef EventDispatcher Owner;
|
|
|
|
typedef EventDispatcher::LocalRef ReturnType;
|
|
|
|
typedef EventDispatcher::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getInstance";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Lorg/mozilla/gecko/EventDispatcher;";
|
|
|
|
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 GetInstance() -> EventDispatcher::LocalRef;
|
|
|
|
|
|
|
|
struct HasGeckoListener_t {
|
|
|
|
typedef EventDispatcher Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "hasGeckoListener";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)Z";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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 SetAttachedToGecko_t {
|
|
|
|
typedef EventDispatcher Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "setAttachedToGecko";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto SetAttachedToGecko(int32_t) const -> void;
|
|
|
|
|
|
|
|
static const int32_t ATTACHED = 1;
|
|
|
|
|
|
|
|
static const int32_t DETACHED = 0;
|
|
|
|
|
|
|
|
static const int32_t REATTACHING = 2;
|
|
|
|
|
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
|
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
|
|
|
class EventDispatcher::NativeCallbackDelegate : public mozilla::jni::ObjectBase<NativeCallbackDelegate>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit NativeCallbackDelegate(const Context& ctx) : ObjectBase<NativeCallbackDelegate>(ctx) {}
|
|
|
|
|
|
|
|
struct New_t {
|
|
|
|
typedef NativeCallbackDelegate Owner;
|
|
|
|
typedef NativeCallbackDelegate::LocalRef ReturnType;
|
|
|
|
typedef NativeCallbackDelegate::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "<init>";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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 New() -> NativeCallbackDelegate::LocalRef;
|
|
|
|
|
|
|
|
struct Finalize_t {
|
|
|
|
typedef NativeCallbackDelegate Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "finalize";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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 SendError_t {
|
|
|
|
typedef NativeCallbackDelegate Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "sendError";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/Object;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct SendSuccess_t {
|
|
|
|
typedef NativeCallbackDelegate Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "sendSuccess";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/Object;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class GeckoAppShell : public mozilla::jni::ObjectBase<GeckoAppShell>
|
2015-07-11 06:41:36 +03:00
|
|
|
{
|
2015-01-10 03:33:57 +03:00
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit GeckoAppShell(const Context& ctx) : ObjectBase<GeckoAppShell>(ctx) {}
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-26 19:26:46 +03:00
|
|
|
class CameraCallback;
|
|
|
|
|
2016-08-05 01:46:12 +03:00
|
|
|
struct AddFullScreenPluginView_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
2016-08-05 01:46:12 +03:00
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "addFullScreenPluginView";
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char signature[] =
|
2016-08-05 01:46:12 +03:00
|
|
|
"(Landroid/view/View;)V";
|
2015-01-10 03:33:57 +03:00
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-05 01:46:12 +03:00
|
|
|
static auto AddFullScreenPluginView(mozilla::jni::Object::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct CancelVibrate_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "cancelVibrate";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto CancelVibrate() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct CheckURIVisited_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "checkUriVisited";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto CheckURIVisited(mozilla::jni::String::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct CloseCamera_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "closeCamera";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto CloseCamera() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct CloseNotification_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "closeNotification";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto CloseNotification(mozilla::jni::String::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct ConnectionGetMimeType_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::String::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::String::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "connectionGetMimeType";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/net/URLConnection;)Ljava/lang/String;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto ConnectionGetMimeType(mozilla::jni::Object::Param) -> mozilla::jni::String::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct CreateInputStream_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "createInputStream";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/net/URLConnection;)Ljava/io/InputStream;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto CreateInputStream(mozilla::jni::Object::Param) -> mozilla::jni::Object::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct CreateShortcut_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "createShortcut";
|
|
|
|
static constexpr char signature[] =
|
2015-12-29 22:49:54 +03:00
|
|
|
"(Ljava/lang/String;Ljava/lang/String;)V";
|
2015-01-10 03:33:57 +03:00
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-12-29 22:49:54 +03:00
|
|
|
static auto CreateShortcut(mozilla::jni::String::Param, mozilla::jni::String::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-10-01 20:40:53 +03:00
|
|
|
struct DisableAlarm_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "disableAlarm";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-10-01 20:40:53 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto DisableAlarm() -> void;
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct DisableBatteryNotifications_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "disableBatteryNotifications";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto DisableBatteryNotifications() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct DisableNetworkNotifications_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "disableNetworkNotifications";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto DisableNetworkNotifications() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct DisableScreenOrientationNotifications_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "disableScreenOrientationNotifications";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto DisableScreenOrientationNotifications() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct DisableSensor_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "disableSensor";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto DisableSensor(int32_t) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct EnableBatteryNotifications_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "enableBatteryNotifications";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto EnableBatteryNotifications() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct EnableLocation_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "enableLocation";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto EnableLocation(bool) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct EnableLocationHighAccuracy_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "enableLocationHighAccuracy";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto EnableLocationHighAccuracy(bool) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct EnableNetworkNotifications_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "enableNetworkNotifications";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto EnableNetworkNotifications() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct EnableScreenOrientationNotifications_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "enableScreenOrientationNotifications";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto EnableScreenOrientationNotifications() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct EnableSensor_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "enableSensor";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto EnableSensor(int32_t) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-05-03 22:04:06 +03:00
|
|
|
struct GetApplicationContext_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getApplicationContext";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Landroid/content/Context;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-05-03 22:04:06 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto GetApplicationContext() -> mozilla::jni::Object::LocalRef;
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct GetConnection_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getConnection";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)Ljava/net/URLConnection;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto GetConnection(mozilla::jni::String::Param) -> mozilla::jni::Object::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct GetContext_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getContext";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Landroid/content/Context;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto GetContext() -> mozilla::jni::Object::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetCurrentBatteryInformation_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::DoubleArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::DoubleArray::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getCurrentBatteryInformation";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()[D";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetCurrentBatteryInformation() -> mozilla::jni::DoubleArray::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetCurrentNetworkInformation_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::DoubleArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::DoubleArray::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getCurrentNetworkInformation";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()[D";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetCurrentNetworkInformation() -> mozilla::jni::DoubleArray::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct GetDensity_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getDensity";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()F";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto GetDensity() -> float;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetDpi_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getDpi";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()I";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetDpi() -> int32_t;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-26 19:25:57 +03:00
|
|
|
struct GetExceptionStackTrace_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::String::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::String::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Throwable::Param> Args;
|
|
|
|
static constexpr char name[] = "getExceptionStackTrace";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/Throwable;)Ljava/lang/String;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::IGNORE;
|
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
|
|
|
};
|
|
|
|
|
|
|
|
static auto GetExceptionStackTrace(mozilla::jni::Throwable::Param) -> mozilla::jni::String::LocalRef;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetExtensionFromMimeType_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::String::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::String::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getExtensionFromMimeType";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)Ljava/lang/String;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetExtensionFromMimeType(mozilla::jni::String::Param) -> mozilla::jni::String::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct GetExternalPublicDirectory_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::String::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::String::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getExternalPublicDirectory";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)Ljava/lang/String;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto GetExternalPublicDirectory(mozilla::jni::String::Param) -> mozilla::jni::String::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-07-24 22:45:55 +03:00
|
|
|
struct GetHWDecoderCapability_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getHWDecoderCapability";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-07-24 22:45:55 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto GetHWDecoderCapability() -> bool;
|
2015-07-24 22:45:55 +03:00
|
|
|
|
|
|
|
struct GetHWEncoderCapability_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getHWEncoderCapability";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-07-24 22:45:55 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto GetHWEncoderCapability() -> bool;
|
2015-07-24 22:45:55 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetHandlersForMimeType_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::ObjectArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::ObjectArray::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getHandlersForMimeType";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetHandlersForMimeType(mozilla::jni::String::Param, mozilla::jni::String::Param) -> mozilla::jni::ObjectArray::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetHandlersForURL_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::ObjectArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::ObjectArray::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getHandlersForURL";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetHandlersForURL(mozilla::jni::String::Param, mozilla::jni::String::Param) -> mozilla::jni::ObjectArray::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetIconForExtension_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::ByteArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::ByteArray::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
int32_t> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getIconForExtension";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;I)[B";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetIconForExtension(mozilla::jni::String::Param, int32_t) -> mozilla::jni::ByteArray::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-04-24 12:43:31 +03:00
|
|
|
struct GetMaxTouchPoints_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-04-24 12:43:31 +03:00
|
|
|
static constexpr char name[] = "getMaxTouchPoints";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()I";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-04-24 12:43:31 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto GetMaxTouchPoints() -> int32_t;
|
2015-04-24 12:43:31 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetMimeTypeFromExtensions_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::String::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::String::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getMimeTypeFromExtensions";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)Ljava/lang/String;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetMimeTypeFromExtensions(mozilla::jni::String::Param) -> mozilla::jni::String::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetNetworkLinkType_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getNetworkLinkType";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()I";
|
|
|
|
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 GetNetworkLinkType() -> int32_t;
|
|
|
|
|
|
|
|
struct GetProxyForURI_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::String::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::String::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
int32_t> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getProxyForURI";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetProxyForURI(mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param, int32_t) -> mozilla::jni::String::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-19 00:55:15 +03:00
|
|
|
struct GetScreenAngle_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getScreenAngle";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()I";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-19 00:55:15 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto GetScreenAngle() -> int32_t;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetScreenDepth_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getScreenDepth";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()I";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetScreenDepth() -> int32_t;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetScreenOrientation_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef int16_t ReturnType;
|
|
|
|
typedef int16_t SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getScreenOrientation";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()S";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetScreenOrientation() -> int16_t;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-26 23:25:40 +03:00
|
|
|
struct GetScreenSize_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getScreenSize";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Landroid/graphics/Rect;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-26 23:25:40 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto GetScreenSize() -> mozilla::jni::Object::LocalRef;
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct GetShowPasswordSetting_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getShowPasswordSetting";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto GetShowPasswordSetting() -> bool;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetSystemColors_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::IntArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::IntArray::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getSystemColors";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()[I";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetSystemColors() -> mozilla::jni::IntArray::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct HandleUncaughtException_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
2016-08-26 19:25:57 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Throwable::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "handleUncaughtException";
|
|
|
|
static constexpr char signature[] =
|
2016-08-26 19:25:57 +03:00
|
|
|
"(Ljava/lang/Throwable;)V";
|
2015-01-10 03:33:57 +03:00
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::IGNORE;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-26 19:25:57 +03:00
|
|
|
static auto HandleUncaughtException(mozilla::jni::Throwable::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct HideProgressDialog_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "hideProgressDialog";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto HideProgressDialog() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct InitCamera_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef mozilla::jni::IntArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::IntArray::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "initCamera";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;III)[I";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto InitCamera(mozilla::jni::String::Param, int32_t, int32_t, int32_t) -> mozilla::jni::IntArray::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct IsNetworkLinkKnown_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "isNetworkLinkKnown";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto IsNetworkLinkKnown() -> bool;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct IsNetworkLinkUp_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "isNetworkLinkUp";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto IsNetworkLinkUp() -> bool;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct IsTablet_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "isTablet";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto IsTablet() -> bool;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct KillAnyZombies_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "killAnyZombies";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto KillAnyZombies() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-11-15 02:22:13 +03:00
|
|
|
struct LaunchOrBringToFront_t {
|
|
|
|
typedef GeckoAppShell 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::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
|
|
|
};
|
|
|
|
|
|
|
|
static auto LaunchOrBringToFront() -> void;
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct LoadPluginClass_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
2016-02-10 01:27:29 +03:00
|
|
|
typedef mozilla::jni::Class::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Class::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "loadPluginClass";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Class;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-02-10 01:27:29 +03:00
|
|
|
static auto LoadPluginClass(mozilla::jni::String::Param, mozilla::jni::String::Param) -> mozilla::jni::Class::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct LockScreenOrientation_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "lockScreenOrientation";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto LockScreenOrientation(int32_t) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct MarkURIVisited_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "markUriVisited";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto MarkURIVisited(mozilla::jni::String::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct MoveTaskToBack_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "moveTaskToBack";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto MoveTaskToBack() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-03-23 21:42:38 +03:00
|
|
|
struct NotifyObservers_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "nativeNotifyObservers";
|
|
|
|
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;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2017-03-06 23:32:37 +03:00
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2016-03-23 21:42:38 +03:00
|
|
|
};
|
|
|
|
|
2016-08-04 16:17:54 +03:00
|
|
|
struct NotifyAlertListener_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
Bug 1305498 - Refactor notification code to be more concise; r=sebastian
Bug 1305498 - 1. Remove NotificationClient task queue; r=sebastian
Not sure why we needed a task queue for NotificationClient actions. The
actions all go through IPC and are non-blocking, so it's perfectly fine
to perform them off of whatever thread we're on.
Bug 1305498 - 2. Integrate NotificationHandler et al into NotificationCllient; r=sebastian
There's no reason to have NotificationHandler, AppNotificationClient,
and ServiceNotificationClient all separate from the base
NotificationClient class. This patch adds the functionality of
those three classes to NotificationClient.
The notifications hash map is changed from a ConcurrentHashMap to a
regular HashMap with synchronization because I think the use case here
doesn't warrant the added performance and overhead of ConcurrentHashMap.
NotificationService is changed to match the new NotificationClient. Now
the only job for NotificationService is to set a notification as
foreground, rather than to manage all notifications like before.
NotificationHandler, AppNotificationClient, and
ServiceNotificationClient will be removed in a later patch.
Bug 1305498 - 3. Set NotificationListener in GeckoApplication; r=sebastian
Set NotificationListener once in GeckoApplication.onCreate, instead of
spreading it out in GeckoApp, BrowserApp, and GeckoService. This is
possible because there's no longer a distinction between
AppNotificationClient and ServiceNotificationClient in the new,
consolidated NotificationClient.
Bug 1305498 - 4. Remove obsolete notification classes; r=sebastian
Remove AppNotificationClient, ServiceNotificationClient, and
NotificationHandler, now that they've all been replaced by the new,
consolidated NotificationClient.
Bug 1305498 - 5. Use NotificationReceiver for web notification callbacks; r=sebastian
Previously, web notification callbacks went to GeckoApp directly, but
that presented some problems such as not being able to implement the
on-close callback, because we don't want to launch GeckoApp when the
notification is closed by swiping. This patch makes us use
NotificationReceiver for callbacks, and let NotificationReceiver launch
GeckoApp if necessary.
Bug 1305498 - 6. Don't keep notification cookie in native code; r=sebastian
Keep the notification cookie a single location (in the notification
intent itself), and simplify the native notification handling code.
Bug 1305498 - 7. Use NotificationReceiver for persistent notifications; r=sebastian
Currently, persistent notification callbacks go through a different code
path, but it'd be more consistent and correct to let persistent
notification callbacks go through NotificationReceiver as well.
This takes care of some housekeeping work that was missing for
persistent notifications, such as deleting the mNotifications entry when
the notification is closed.
2016-10-06 04:52:32 +03:00
|
|
|
mozilla::jni::String::Param,
|
2016-08-04 16:17:54 +03:00
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "notifyAlertListener";
|
|
|
|
static constexpr char signature[] =
|
Bug 1305498 - Refactor notification code to be more concise; r=sebastian
Bug 1305498 - 1. Remove NotificationClient task queue; r=sebastian
Not sure why we needed a task queue for NotificationClient actions. The
actions all go through IPC and are non-blocking, so it's perfectly fine
to perform them off of whatever thread we're on.
Bug 1305498 - 2. Integrate NotificationHandler et al into NotificationCllient; r=sebastian
There's no reason to have NotificationHandler, AppNotificationClient,
and ServiceNotificationClient all separate from the base
NotificationClient class. This patch adds the functionality of
those three classes to NotificationClient.
The notifications hash map is changed from a ConcurrentHashMap to a
regular HashMap with synchronization because I think the use case here
doesn't warrant the added performance and overhead of ConcurrentHashMap.
NotificationService is changed to match the new NotificationClient. Now
the only job for NotificationService is to set a notification as
foreground, rather than to manage all notifications like before.
NotificationHandler, AppNotificationClient, and
ServiceNotificationClient will be removed in a later patch.
Bug 1305498 - 3. Set NotificationListener in GeckoApplication; r=sebastian
Set NotificationListener once in GeckoApplication.onCreate, instead of
spreading it out in GeckoApp, BrowserApp, and GeckoService. This is
possible because there's no longer a distinction between
AppNotificationClient and ServiceNotificationClient in the new,
consolidated NotificationClient.
Bug 1305498 - 4. Remove obsolete notification classes; r=sebastian
Remove AppNotificationClient, ServiceNotificationClient, and
NotificationHandler, now that they've all been replaced by the new,
consolidated NotificationClient.
Bug 1305498 - 5. Use NotificationReceiver for web notification callbacks; r=sebastian
Previously, web notification callbacks went to GeckoApp directly, but
that presented some problems such as not being able to implement the
on-close callback, because we don't want to launch GeckoApp when the
notification is closed by swiping. This patch makes us use
NotificationReceiver for callbacks, and let NotificationReceiver launch
GeckoApp if necessary.
Bug 1305498 - 6. Don't keep notification cookie in native code; r=sebastian
Keep the notification cookie a single location (in the notification
intent itself), and simplify the native notification handling code.
Bug 1305498 - 7. Use NotificationReceiver for persistent notifications; r=sebastian
Currently, persistent notification callbacks go through a different code
path, but it'd be more consistent and correct to let persistent
notification callbacks go through NotificationReceiver as well.
This takes care of some housekeeping work that was missing for
persistent notifications, such as deleting the mNotifications entry when
the notification is closed.
2016-10-06 04:52:32 +03:00
|
|
|
"(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V";
|
2016-08-04 16:17:54 +03:00
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-08-04 16:17:54 +03:00
|
|
|
};
|
|
|
|
|
2016-07-12 01:07:35 +03:00
|
|
|
struct NotifyUriVisited_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "notifyUriVisited";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-07-12 01:07:35 +03:00
|
|
|
};
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct NotifyWakeLockChanged_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "notifyWakeLockChanged";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto NotifyWakeLockChanged(mozilla::jni::String::Param, mozilla::jni::String::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-19 01:04:11 +03:00
|
|
|
struct OnFullScreenPluginHidden_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "onFullScreenPluginHidden";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Landroid/view/View;)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::GECKO;
|
|
|
|
};
|
|
|
|
|
2016-07-08 18:39:10 +03:00
|
|
|
struct OnLocationChanged_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
double,
|
|
|
|
double,
|
|
|
|
double,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
int64_t> Args;
|
|
|
|
static constexpr char name[] = "onLocationChanged";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(DDDFFFJ)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-07-08 18:39:10 +03:00
|
|
|
};
|
|
|
|
|
2016-07-08 18:39:09 +03:00
|
|
|
struct OnSensorChanged_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
int32_t,
|
|
|
|
int64_t> Args;
|
|
|
|
static constexpr char name[] = "onSensorChanged";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IFFFFIJ)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-07-08 18:39:09 +03:00
|
|
|
};
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct OpenUriExternal_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "openUriExternal";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto OpenUriExternal(mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param) -> bool;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct PerformHapticFeedback_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "performHapticFeedback";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto PerformHapticFeedback(bool) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-05 01:46:12 +03:00
|
|
|
struct RemoveFullScreenPluginView_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
2016-08-05 01:46:12 +03:00
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "removeFullScreenPluginView";
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char signature[] =
|
2016-08-05 01:46:12 +03:00
|
|
|
"(Landroid/view/View;)V";
|
2015-01-10 03:33:57 +03:00
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-05 01:46:12 +03:00
|
|
|
static auto RemoveFullScreenPluginView(mozilla::jni::Object::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-19 01:04:11 +03:00
|
|
|
struct ReportJavaCrash_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
2016-08-26 19:25:57 +03:00
|
|
|
mozilla::jni::Throwable::Param,
|
2016-08-19 01:04:11 +03:00
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "reportJavaCrash";
|
|
|
|
static constexpr char signature[] =
|
2016-08-26 19:25:57 +03:00
|
|
|
"(Ljava/lang/Throwable;Ljava/lang/String;)V";
|
2016-08-19 01:04:11 +03:00
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct ScheduleRestart_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "scheduleRestart";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto ScheduleRestart() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-10-01 20:40:53 +03:00
|
|
|
struct SetAlarm_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "setAlarm";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(II)Z";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-10-01 20:40:53 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto SetAlarm(int32_t, int32_t) -> bool;
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct SetFullScreen_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "setFullScreen";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto SetFullScreen(bool) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct SetKeepScreenOn_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "setKeepScreenOn";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto SetKeepScreenOn(bool) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-12-24 06:03:33 +03:00
|
|
|
struct SetScreenDepthOverride_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "setScreenDepthOverride";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-12-24 06:03:33 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto SetScreenDepthOverride(int32_t) -> void;
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct SetURITitle_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "setUriTitle";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto SetURITitle(mozilla::jni::String::Param, mozilla::jni::String::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-09-22 23:38:20 +03:00
|
|
|
struct ShowNotification_t {
|
2016-04-17 16:18:20 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
2016-09-22 23:38:20 +03:00
|
|
|
static constexpr char name[] = "showNotification";
|
2016-04-17 16:18:20 +03:00
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-04-17 16:18:20 +03:00
|
|
|
};
|
|
|
|
|
2016-09-22 23:38:20 +03:00
|
|
|
static auto ShowNotification(mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param) -> void;
|
2016-04-17 16:18:20 +03:00
|
|
|
|
2016-10-06 02:51:04 +03:00
|
|
|
struct StartGeckoServiceChildProcess_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::ObjectArray::Param,
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "startGeckoServiceChildProcess";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;[Ljava/lang/String;II)I";
|
|
|
|
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 StartGeckoServiceChildProcess(mozilla::jni::String::Param, mozilla::jni::ObjectArray::Param, int32_t, int32_t) -> int32_t;
|
|
|
|
|
2016-03-23 21:42:38 +03:00
|
|
|
struct SyncNotifyObservers_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "syncNotifyObservers";
|
|
|
|
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;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-03-23 21:42:38 +03:00
|
|
|
};
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct UnlockProfile_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "unlockProfile";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto UnlockProfile() -> bool;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct UnlockScreenOrientation_t {
|
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "unlockScreenOrientation";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto UnlockScreenOrientation() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct Vibrate_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int64_t> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "vibrate";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(J)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto Vibrate(int64_t) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct Vibrate2_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef GeckoAppShell Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::LongArray::Param,
|
|
|
|
int32_t> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "vibrate";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"([JI)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto Vibrate(mozilla::jni::LongArray::Param, int32_t) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2016-03-23 21:42:38 +03:00
|
|
|
template<class Impl> class Natives;
|
2016-08-26 19:26:46 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
class GeckoAppShell::CameraCallback : public mozilla::jni::ObjectBase<CameraCallback>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit CameraCallback(const Context& ctx) : ObjectBase<CameraCallback>(ctx) {}
|
|
|
|
|
|
|
|
struct OnFrameData_t {
|
|
|
|
typedef CameraCallback Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
mozilla::jni::ByteArray::Param> Args;
|
|
|
|
static constexpr char name[] = "onFrameData";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I[B)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 const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
|
|
|
|
template<class Impl> class Natives;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-19 01:04:11 +03:00
|
|
|
class GeckoBatteryManager : public mozilla::jni::ObjectBase<GeckoBatteryManager>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit GeckoBatteryManager(const Context& ctx) : ObjectBase<GeckoBatteryManager>(ctx) {}
|
|
|
|
|
|
|
|
struct OnBatteryChange_t {
|
|
|
|
typedef GeckoBatteryManager Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
double,
|
|
|
|
bool,
|
|
|
|
double> Args;
|
|
|
|
static constexpr char name[] = "onBatteryChange";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(DZD)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::GECKO;
|
|
|
|
};
|
|
|
|
|
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
|
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class GeckoEditable : public mozilla::jni::ObjectBase<GeckoEditable>
|
2015-10-08 22:25:49 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit GeckoEditable(const Context& ctx) : ObjectBase<GeckoEditable>(ctx) {}
|
2015-10-08 22:25:49 +03:00
|
|
|
|
|
|
|
struct New_t {
|
|
|
|
typedef GeckoEditable Owner;
|
|
|
|
typedef GeckoEditable::LocalRef ReturnType;
|
|
|
|
typedef GeckoEditable::Param SetterType;
|
2015-12-24 06:03:34 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
2015-10-08 22:25:49 +03:00
|
|
|
static constexpr char name[] = "<init>";
|
|
|
|
static constexpr char signature[] =
|
2015-12-24 06:03:34 +03:00
|
|
|
"(Lorg/mozilla/gecko/GeckoView;)V";
|
2015-10-08 22:25:49 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-10-08 22:25:49 +03:00
|
|
|
};
|
|
|
|
|
2015-12-24 06:03:34 +03:00
|
|
|
static auto New(mozilla::jni::Object::Param) -> GeckoEditable::LocalRef;
|
2015-10-08 22:25:49 +03:00
|
|
|
|
2017-03-02 21:47:14 +03:00
|
|
|
struct OnViewChange_t {
|
2015-10-23 00:45:47 +03:00
|
|
|
typedef GeckoEditable Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "onViewChange";
|
2015-10-23 00:45:47 +03:00
|
|
|
static constexpr char signature[] =
|
2017-03-02 21:47:14 +03:00
|
|
|
"(Lorg/mozilla/gecko/GeckoView;)V";
|
2015-10-23 00:45:47 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
2017-03-02 21:47:14 +03:00
|
|
|
mozilla::jni::CallingThread::GECKO;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2017-03-02 21:47:14 +03:00
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-10-23 00:45:47 +03:00
|
|
|
};
|
|
|
|
|
2017-03-02 21:47:14 +03:00
|
|
|
auto OnViewChange(mozilla::jni::Object::Param) const -> void;
|
|
|
|
|
|
|
|
struct SetDefaultEditableChild_t {
|
2015-10-08 22:25:49 +03:00
|
|
|
typedef GeckoEditable Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "setDefaultEditableChild";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Lorg/mozilla/gecko/IGeckoEditableChild;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto SetDefaultEditableChild(mozilla::jni::Object::Param) const -> void;
|
|
|
|
|
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
class GeckoEditableChild : public mozilla::jni::ObjectBase<GeckoEditableChild>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit GeckoEditableChild(const Context& ctx) : ObjectBase<GeckoEditableChild>(ctx) {}
|
|
|
|
|
|
|
|
struct New_t {
|
|
|
|
typedef GeckoEditableChild Owner;
|
|
|
|
typedef GeckoEditableChild::LocalRef ReturnType;
|
|
|
|
typedef GeckoEditableChild::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "<init>";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Lorg/mozilla/gecko/IGeckoEditableParent;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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 New(mozilla::jni::Object::Param) -> GeckoEditableChild::LocalRef;
|
|
|
|
|
|
|
|
struct NotifyIME_t {
|
|
|
|
typedef GeckoEditableChild Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-10-08 22:25:49 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "notifyIME";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-10-08 22:25:49 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto NotifyIME(int32_t) const -> void;
|
|
|
|
|
|
|
|
struct NotifyIMEContext_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2015-10-08 22:25:49 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "notifyIMEContext";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-10-08 22:25:49 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto NotifyIMEContext(int32_t, mozilla::jni::String::Param, mozilla::jni::String::Param, mozilla::jni::String::Param) const -> void;
|
|
|
|
|
2016-03-01 15:49:54 +03:00
|
|
|
struct OnDefaultKeyEvent_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2016-03-01 15:49:54 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "onDefaultKeyEvent";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Landroid/view/KeyEvent;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-03-01 15:49:54 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto OnDefaultKeyEvent(mozilla::jni::Object::Param) const -> void;
|
|
|
|
|
2015-10-23 00:45:46 +03:00
|
|
|
struct OnImeAddCompositionRange_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2015-10-23 00:45:46 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
bool,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "onImeAddCompositionRange";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IIIIIZIII)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2017-03-02 21:47:14 +03:00
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2015-10-23 00:45:46 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct OnImeReplaceText_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2015-10-23 00:45:46 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
2015-11-03 19:53:58 +03:00
|
|
|
mozilla::jni::String::Param> Args;
|
2015-10-23 00:45:46 +03:00
|
|
|
static constexpr char name[] = "onImeReplaceText";
|
|
|
|
static constexpr char signature[] =
|
2015-11-03 19:53:58 +03:00
|
|
|
"(IILjava/lang/String;)V";
|
2015-10-23 00:45:46 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2015-10-23 00:45:46 +03:00
|
|
|
};
|
|
|
|
|
2016-07-20 10:19:05 +03:00
|
|
|
struct OnImeRequestCursorUpdates_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2016-07-20 10:19:05 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "onImeRequestCursorUpdates";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2017-03-02 21:47:14 +03:00
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2016-07-20 10:19:05 +03:00
|
|
|
};
|
|
|
|
|
2015-10-23 00:45:46 +03:00
|
|
|
struct OnImeSynchronize_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2015-10-23 00:45:46 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "onImeSynchronize";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2017-03-02 21:47:14 +03:00
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2015-10-23 00:45:46 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct OnImeUpdateComposition_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2015-10-23 00:45:46 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "onImeUpdateComposition";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(II)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2015-10-23 00:45:46 +03:00
|
|
|
};
|
|
|
|
|
2015-10-23 00:45:46 +03:00
|
|
|
struct OnKeyEvent_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2015-10-23 00:45:46 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
2017-03-01 23:29:30 +03:00
|
|
|
int64_t,
|
2015-10-23 00:45:46 +03:00
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
2016-03-01 15:49:54 +03:00
|
|
|
bool,
|
|
|
|
mozilla::jni::Object::Param> Args;
|
2015-10-23 00:45:46 +03:00
|
|
|
static constexpr char name[] = "onKeyEvent";
|
|
|
|
static constexpr char signature[] =
|
2017-03-01 23:29:30 +03:00
|
|
|
"(IIIIIJIIIZLandroid/view/KeyEvent;)V";
|
2015-10-23 00:45:46 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2015-10-23 00:45:46 +03:00
|
|
|
};
|
|
|
|
|
2015-10-08 22:25:49 +03:00
|
|
|
struct OnSelectionChange_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2015-10-08 22:25:49 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "onSelectionChange";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(II)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
2017-01-13 22:39:27 +03:00
|
|
|
mozilla::jni::ExceptionMode::IGNORE;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-10-08 22:25:49 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto OnSelectionChange(int32_t, int32_t) const -> void;
|
|
|
|
|
|
|
|
struct OnTextChange_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2015-10-08 22:25:49 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "onTextChange";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/CharSequence;III)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
2017-01-13 22:39:27 +03:00
|
|
|
mozilla::jni::ExceptionMode::IGNORE;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-10-08 22:25:49 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto OnTextChange(mozilla::jni::String::Param, int32_t, int32_t, int32_t) const -> void;
|
|
|
|
|
2016-07-20 10:19:05 +03:00
|
|
|
struct UpdateCompositionRects_t {
|
2017-03-02 21:47:14 +03:00
|
|
|
typedef GeckoEditableChild Owner;
|
2016-07-20 10:19:05 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::ObjectArray::Param> Args;
|
|
|
|
static constexpr char name[] = "updateCompositionRects";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"([Landroid/graphics/RectF;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-07-20 10:19:05 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto UpdateCompositionRects(mozilla::jni::ObjectArray::Param) const -> void;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-10-23 00:45:46 +03:00
|
|
|
template<class Impl> class Natives;
|
2015-10-08 22:25:49 +03:00
|
|
|
};
|
|
|
|
|
2017-03-02 21:47:14 +03:00
|
|
|
class GeckoEditableClient : public mozilla::jni::ObjectBase<GeckoEditableClient>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit GeckoEditableClient(const Context& ctx) : ObjectBase<GeckoEditableClient>(ctx) {}
|
|
|
|
|
|
|
|
static const int32_t END_MONITOR = 3;
|
|
|
|
|
|
|
|
static const int32_t ONE_SHOT = 1;
|
|
|
|
|
|
|
|
static const int32_t START_MONITOR = 2;
|
|
|
|
|
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class GeckoEditableListener : public mozilla::jni::ObjectBase<GeckoEditableListener>
|
2015-10-08 22:25:49 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit GeckoEditableListener(const Context& ctx) : ObjectBase<GeckoEditableListener>(ctx) {}
|
2015-10-08 22:25:49 +03:00
|
|
|
|
2016-02-26 22:38:57 +03:00
|
|
|
static const int32_t NOTIFY_IME_OF_BLUR = 2;
|
|
|
|
|
|
|
|
static const int32_t NOTIFY_IME_OF_FOCUS = 1;
|
|
|
|
|
2015-10-08 22:25:49 +03:00
|
|
|
static const int32_t NOTIFY_IME_OPEN_VKB = -2;
|
|
|
|
|
|
|
|
static const int32_t NOTIFY_IME_REPLY_EVENT = -1;
|
|
|
|
|
2016-02-26 22:38:57 +03:00
|
|
|
static const int32_t NOTIFY_IME_TO_CANCEL_COMPOSITION = 9;
|
|
|
|
|
|
|
|
static const int32_t NOTIFY_IME_TO_COMMIT_COMPOSITION = 8;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-10-08 22:25:49 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class GeckoNetworkManager : public mozilla::jni::ObjectBase<GeckoNetworkManager>
|
2016-07-21 04:44:48 +03:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit GeckoNetworkManager(const Context& ctx) : ObjectBase<GeckoNetworkManager>(ctx) {}
|
2016-07-21 04:44:48 +03:00
|
|
|
|
|
|
|
struct OnConnectionChanged_t {
|
|
|
|
typedef GeckoNetworkManager Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
bool,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "onConnectionChanged";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(ILjava/lang/String;ZI)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-07-21 04:44:48 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct OnStatusChanged_t {
|
|
|
|
typedef GeckoNetworkManager Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "onStatusChanged";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-07-21 04:44:48 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-07-21 04:44:48 +03:00
|
|
|
|
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class GeckoScreenOrientation : public mozilla::jni::ObjectBase<GeckoScreenOrientation>
|
2016-07-21 04:44:48 +03:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit GeckoScreenOrientation(const Context& ctx) : ObjectBase<GeckoScreenOrientation>(ctx) {}
|
2016-07-21 04:44:48 +03:00
|
|
|
|
|
|
|
struct OnOrientationChange_t {
|
|
|
|
typedef GeckoScreenOrientation Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int16_t,
|
|
|
|
int16_t> Args;
|
|
|
|
static constexpr char name[] = "onOrientationChange";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(SS)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-07-21 04:44:48 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-07-21 04:44:48 +03:00
|
|
|
|
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class GeckoThread : public mozilla::jni::ObjectBase<GeckoThread>
|
2015-08-13 07:53:39 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit GeckoThread(const Context& ctx) : ObjectBase<GeckoThread>(ctx) {}
|
2015-08-13 07:53:39 +03:00
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
class State;
|
|
|
|
|
2016-02-02 01:38:14 +03:00
|
|
|
struct CheckAndSetState_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param,
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "checkAndSetState";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Lorg/mozilla/gecko/GeckoThread$State;Lorg/mozilla/gecko/GeckoThread$State;)Z";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-02-02 01:38:14 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto CheckAndSetState(mozilla::jni::Object::Param, mozilla::jni::Object::Param) -> bool;
|
|
|
|
|
2016-04-20 22:06:13 +03:00
|
|
|
struct CreateServices_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
2016-04-16 09:19:37 +03:00
|
|
|
mozilla::jni::String::Param,
|
2016-04-20 22:06:13 +03:00
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "nativeCreateServices";
|
|
|
|
static constexpr char signature[] =
|
2016-04-16 09:19:37 +03:00
|
|
|
"(Ljava/lang/String;Ljava/lang/String;)V";
|
2016-04-20 22:06:13 +03:00
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-04-20 22:06:13 +03:00
|
|
|
};
|
|
|
|
|
2016-04-06 04:43:41 +03:00
|
|
|
struct OnPause_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "nativeOnPause";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-04-06 04:43:41 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct OnResume_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "nativeOnResume";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-04-06 04:43:41 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
struct PumpMessageLoop_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "pumpMessageLoop";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Landroid/os/Message;)Z";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto PumpMessageLoop(mozilla::jni::Object::Param) -> bool;
|
2015-08-13 07:53:39 +03:00
|
|
|
|
2016-08-19 01:04:11 +03:00
|
|
|
struct RequestUiThreadCallback_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int64_t> Args;
|
|
|
|
static constexpr char name[] = "requestUiThreadCallback";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(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::CURRENT;
|
|
|
|
};
|
|
|
|
|
|
|
|
static auto RequestUiThreadCallback(int64_t) -> void;
|
|
|
|
|
|
|
|
struct RunUiThreadCallback_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef int64_t ReturnType;
|
|
|
|
typedef int64_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "runUiThreadCallback";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()J";
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
struct SetState_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "setState";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Lorg/mozilla/gecko/GeckoThread$State;)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto SetState(mozilla::jni::Object::Param) -> void;
|
|
|
|
|
2015-08-20 01:14:47 +03:00
|
|
|
struct SpeculativeConnect_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "speculativeConnectNative";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-20 01:14:47 +03:00
|
|
|
};
|
|
|
|
|
2016-04-06 04:43:40 +03:00
|
|
|
struct WaitOnGecko_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "waitOnGecko";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-04-06 04:43:40 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
struct ClsLoader_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "clsLoader";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Ljava/lang/ClassLoader;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto ClsLoader() -> mozilla::jni::Object::LocalRef;
|
|
|
|
|
|
|
|
struct MsgQueue_t {
|
|
|
|
typedef GeckoThread Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "msgQueue";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Landroid/os/MessageQueue;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto MsgQueue() -> mozilla::jni::Object::LocalRef;
|
|
|
|
|
|
|
|
static auto MsgQueue(mozilla::jni::Object::Param) -> void;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-08-20 01:14:47 +03:00
|
|
|
template<class Impl> class Natives;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class GeckoThread::State : public mozilla::jni::ObjectBase<State>
|
2015-08-13 07:53:39 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit State(const Context& ctx) : ObjectBase<State>(ctx) {}
|
2015-08-13 07:53:39 +03:00
|
|
|
|
|
|
|
struct EXITED_t {
|
|
|
|
typedef State Owner;
|
|
|
|
typedef State::LocalRef ReturnType;
|
|
|
|
typedef State::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "EXITED";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/GeckoThread$State;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto EXITED() -> State::LocalRef;
|
|
|
|
|
|
|
|
struct EXITING_t {
|
|
|
|
typedef State Owner;
|
|
|
|
typedef State::LocalRef ReturnType;
|
|
|
|
typedef State::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "EXITING";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/GeckoThread$State;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto EXITING() -> State::LocalRef;
|
|
|
|
|
|
|
|
struct INITIAL_t {
|
|
|
|
typedef State Owner;
|
|
|
|
typedef State::LocalRef ReturnType;
|
|
|
|
typedef State::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "INITIAL";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/GeckoThread$State;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto INITIAL() -> State::LocalRef;
|
|
|
|
|
2015-08-13 07:53:40 +03:00
|
|
|
struct JNI_READY_t {
|
|
|
|
typedef State Owner;
|
|
|
|
typedef State::LocalRef ReturnType;
|
|
|
|
typedef State::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "JNI_READY";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/GeckoThread$State;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:40 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto JNI_READY() -> State::LocalRef;
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
struct LAUNCHED_t {
|
|
|
|
typedef State Owner;
|
|
|
|
typedef State::LocalRef ReturnType;
|
|
|
|
typedef State::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "LAUNCHED";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/GeckoThread$State;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto LAUNCHED() -> State::LocalRef;
|
|
|
|
|
|
|
|
struct LIBS_READY_t {
|
|
|
|
typedef State Owner;
|
|
|
|
typedef State::LocalRef ReturnType;
|
|
|
|
typedef State::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "LIBS_READY";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/GeckoThread$State;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto LIBS_READY() -> State::LocalRef;
|
|
|
|
|
|
|
|
struct MOZGLUE_READY_t {
|
|
|
|
typedef State Owner;
|
|
|
|
typedef State::LocalRef ReturnType;
|
|
|
|
typedef State::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "MOZGLUE_READY";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/GeckoThread$State;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto MOZGLUE_READY() -> State::LocalRef;
|
|
|
|
|
2015-08-20 01:14:47 +03:00
|
|
|
struct PROFILE_READY_t {
|
|
|
|
typedef State Owner;
|
|
|
|
typedef State::LocalRef ReturnType;
|
|
|
|
typedef State::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "PROFILE_READY";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/GeckoThread$State;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-20 01:14:47 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto PROFILE_READY() -> State::LocalRef;
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
struct RUNNING_t {
|
|
|
|
typedef State Owner;
|
|
|
|
typedef State::LocalRef ReturnType;
|
|
|
|
typedef State::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "RUNNING";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/GeckoThread$State;";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto RUNNING() -> State::LocalRef;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class GeckoView : public mozilla::jni::ObjectBase<GeckoView>
|
2015-09-21 17:13:32 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit GeckoView(const Context& ctx) : ObjectBase<GeckoView>(ctx) {}
|
2015-09-21 17:13:32 +03:00
|
|
|
|
|
|
|
class Window;
|
|
|
|
|
2016-07-21 04:43:34 +03:00
|
|
|
static const int32_t LOAD_DEFAULT = 0;
|
|
|
|
|
|
|
|
static const int32_t LOAD_NEW_TAB = 1;
|
|
|
|
|
|
|
|
static const int32_t LOAD_SWITCH_TAB = 2;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-09-21 17:13:32 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class GeckoView::Window : public mozilla::jni::ObjectBase<Window>
|
2015-09-21 17:13:32 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit Window(const Context& ctx) : ObjectBase<Window>(ctx) {}
|
2015-09-21 17:13:32 +03:00
|
|
|
|
2015-10-23 00:45:46 +03:00
|
|
|
struct Close_t {
|
|
|
|
typedef Window Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "close";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2015-10-23 00:45:46 +03:00
|
|
|
};
|
|
|
|
|
2015-09-21 17:13:32 +03:00
|
|
|
struct DisposeNative_t {
|
|
|
|
typedef Window Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "disposeNative";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
2016-07-21 04:43:34 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2016-07-21 04:43:34 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct LoadUri_t {
|
|
|
|
typedef Window Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "loadUri";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;I)V";
|
2015-09-21 17:13:32 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2015-09-21 17:13:32 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct Open_t {
|
|
|
|
typedef Window Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
Window::Param,
|
2015-10-08 22:25:49 +03:00
|
|
|
GeckoView::Param,
|
2015-12-24 06:03:34 +03:00
|
|
|
mozilla::jni::Object::Param,
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
mozilla::jni::Object::Param,
|
2016-09-29 09:23:56 +03:00
|
|
|
mozilla::jni::String::Param,
|
2017-02-17 02:26:20 +03:00
|
|
|
mozilla::jni::Object::Param,
|
2016-09-29 09:23:56 +03:00
|
|
|
int32_t> Args;
|
2015-09-21 17:13:32 +03:00
|
|
|
static constexpr char name[] = "open";
|
|
|
|
static constexpr char signature[] =
|
2017-02-17 02:26:20 +03:00
|
|
|
"(Lorg/mozilla/gecko/GeckoView$Window;Lorg/mozilla/gecko/GeckoView;Ljava/lang/Object;Lorg/mozilla/gecko/EventDispatcher;Ljava/lang/String;Lorg/mozilla/gecko/util/GeckoBundle;I)V";
|
2015-10-08 22:25:49 +03:00
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2015-09-21 17:13:32 +03:00
|
|
|
};
|
|
|
|
|
2015-12-24 06:03:35 +03:00
|
|
|
struct Reattach_t {
|
|
|
|
typedef Window Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
2016-08-01 21:21:31 +03:00
|
|
|
GeckoView::Param,
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
mozilla::jni::Object::Param,
|
2016-08-01 21:21:31 +03:00
|
|
|
mozilla::jni::Object::Param> Args;
|
2015-12-24 06:03:35 +03:00
|
|
|
static constexpr char name[] = "reattach";
|
|
|
|
static constexpr char signature[] =
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
"(Lorg/mozilla/gecko/GeckoView;Ljava/lang/Object;Lorg/mozilla/gecko/EventDispatcher;)V";
|
2015-12-24 06:03:35 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2015-12-24 06:03:35 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-09-21 17:13:32 +03:00
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class PrefsHelper : public mozilla::jni::ObjectBase<PrefsHelper>
|
2015-09-28 19:07:09 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit PrefsHelper(const Context& ctx) : ObjectBase<PrefsHelper>(ctx) {}
|
2015-09-28 19:07:09 +03:00
|
|
|
|
2016-02-02 01:38:13 +03:00
|
|
|
struct CallPrefHandler_t {
|
2015-09-28 19:07:09 +03:00
|
|
|
typedef PrefsHelper Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
2016-02-02 01:38:13 +03:00
|
|
|
mozilla::jni::Object::Param,
|
|
|
|
int32_t,
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
bool,
|
2015-09-28 19:07:09 +03:00
|
|
|
int32_t,
|
2016-02-02 01:38:13 +03:00
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "callPrefHandler";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Lorg/mozilla/gecko/PrefsHelper$PrefHandler;ILjava/lang/String;ZILjava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-02-02 01:38:13 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto CallPrefHandler(mozilla::jni::Object::Param, int32_t, mozilla::jni::String::Param, bool, int32_t, mozilla::jni::String::Param) -> void;
|
|
|
|
|
|
|
|
struct AddObserver_t {
|
|
|
|
typedef PrefsHelper Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
2015-09-28 19:07:09 +03:00
|
|
|
mozilla::jni::ObjectArray::Param,
|
2016-02-02 01:38:13 +03:00
|
|
|
mozilla::jni::Object::Param,
|
|
|
|
mozilla::jni::ObjectArray::Param> Args;
|
|
|
|
static constexpr char name[] = "nativeAddObserver";
|
2015-09-28 19:07:09 +03:00
|
|
|
static constexpr char signature[] =
|
2016-02-02 01:38:13 +03:00
|
|
|
"([Ljava/lang/String;Lorg/mozilla/gecko/PrefsHelper$PrefHandler;[Ljava/lang/String;)V";
|
2015-09-28 19:07:09 +03:00
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2015-09-28 19:07:09 +03:00
|
|
|
};
|
|
|
|
|
2016-02-02 01:38:13 +03:00
|
|
|
struct GetPrefs_t {
|
2015-09-28 19:07:09 +03:00
|
|
|
typedef PrefsHelper Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
2016-02-02 01:38:13 +03:00
|
|
|
mozilla::jni::ObjectArray::Param,
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "nativeGetPrefs";
|
2015-09-28 19:07:09 +03:00
|
|
|
static constexpr char signature[] =
|
2016-02-02 01:38:13 +03:00
|
|
|
"([Ljava/lang/String;Lorg/mozilla/gecko/PrefsHelper$PrefHandler;)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-02-02 01:38:13 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct RemoveObserver_t {
|
|
|
|
typedef PrefsHelper Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::ObjectArray::Param> Args;
|
|
|
|
static constexpr char name[] = "nativeRemoveObserver";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"([Ljava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-02-02 01:38:13 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct SetPref_t {
|
|
|
|
typedef PrefsHelper Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
bool,
|
|
|
|
int32_t,
|
|
|
|
bool,
|
|
|
|
int32_t,
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "nativeSetPref";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;ZIZILjava/lang/String;)V";
|
2015-09-28 19:07:09 +03:00
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2015-09-28 19:07:09 +03:00
|
|
|
};
|
|
|
|
|
2016-02-02 01:38:13 +03:00
|
|
|
struct OnPrefChange_t {
|
|
|
|
typedef PrefsHelper Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param,
|
|
|
|
int32_t,
|
|
|
|
bool,
|
|
|
|
int32_t,
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "onPrefChange";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;IZILjava/lang/String;)V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-02-02 01:38:13 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto OnPrefChange(mozilla::jni::String::Param, int32_t, bool, int32_t, mozilla::jni::String::Param) -> void;
|
|
|
|
|
|
|
|
static const int32_t PREF_BOOL = 1;
|
|
|
|
|
|
|
|
static const int32_t PREF_FINISH = 0;
|
|
|
|
|
|
|
|
static const int32_t PREF_INT = 2;
|
|
|
|
|
|
|
|
static const int32_t PREF_INVALID = -1;
|
|
|
|
|
|
|
|
static const int32_t PREF_STRING = 3;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-09-28 19:07:09 +03:00
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
2016-11-03 17:58:30 +03:00
|
|
|
class ScreenManagerHelper : public mozilla::jni::ObjectBase<ScreenManagerHelper>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit ScreenManagerHelper(const Context& ctx) : ObjectBase<ScreenManagerHelper>(ctx) {}
|
|
|
|
|
|
|
|
struct AddDisplay_t {
|
|
|
|
typedef ScreenManagerHelper Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
float> Args;
|
|
|
|
static constexpr char name[] = "addDisplay";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IIIF)I";
|
|
|
|
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 RemoveDisplay_t {
|
|
|
|
typedef ScreenManagerHelper Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "removeDisplay";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(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::CURRENT;
|
|
|
|
};
|
|
|
|
|
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
|
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
2016-08-24 01:52:30 +03:00
|
|
|
class SurfaceTextureListener : public mozilla::jni::ObjectBase<SurfaceTextureListener>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit SurfaceTextureListener(const Context& ctx) : ObjectBase<SurfaceTextureListener>(ctx) {}
|
|
|
|
|
|
|
|
struct New_t {
|
|
|
|
typedef SurfaceTextureListener Owner;
|
|
|
|
typedef SurfaceTextureListener::LocalRef ReturnType;
|
|
|
|
typedef SurfaceTextureListener::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "<init>";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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 New() -> SurfaceTextureListener::LocalRef;
|
|
|
|
|
|
|
|
struct OnFrameAvailable_t {
|
|
|
|
typedef SurfaceTextureListener Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "nativeOnFrameAvailable";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
2016-09-16 22:13:48 +03:00
|
|
|
class GeckoLayerClient : public mozilla::jni::ObjectBase<GeckoLayerClient>
|
2015-07-11 06:41:36 +03:00
|
|
|
{
|
2013-11-12 22:41:00 +04:00
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-09-16 22:13:48 +03:00
|
|
|
explicit GeckoLayerClient(const Context& ctx) : ObjectBase<GeckoLayerClient>(ctx) {}
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-09-16 22:13:48 +03:00
|
|
|
struct ContentDocumentChanged_t {
|
|
|
|
typedef GeckoLayerClient Owner;
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2016-09-16 22:13:48 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "contentDocumentChanged";
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char signature[] =
|
2016-09-16 22:13:48 +03:00
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-09-16 22:13:48 +03:00
|
|
|
auto ContentDocumentChanged() const -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-09-16 22:13:48 +03:00
|
|
|
struct CreateFrame_t {
|
|
|
|
typedef GeckoLayerClient Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "createFrame";
|
2016-07-21 20:49:04 +03:00
|
|
|
static constexpr char signature[] =
|
2016-09-16 22:13:48 +03:00
|
|
|
"()Lorg/mozilla/gecko/gfx/LayerRenderer$Frame;";
|
|
|
|
static const bool isStatic = false;
|
2016-07-21 20:49:04 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2016-09-16 22:13:48 +03:00
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto CreateFrame() const -> mozilla::jni::Object::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct IsContentDocumentDisplayed_t {
|
|
|
|
typedef GeckoLayerClient Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "isContentDocumentDisplayed";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto IsContentDocumentDisplayed() const -> bool;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-01-07 05:33:18 +03:00
|
|
|
struct OnGeckoReady_t {
|
|
|
|
typedef GeckoLayerClient Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "onGeckoReady";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-01-07 05:33:18 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto OnGeckoReady() const -> void;
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct SetFirstPaintViewport_t {
|
|
|
|
typedef GeckoLayerClient Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "setFirstPaintViewport";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(FFFFFFF)V";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto SetFirstPaintViewport(float, float, float, float, float, float, float) const -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct SyncFrameMetrics_t {
|
|
|
|
typedef GeckoLayerClient Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
float,
|
2015-09-12 04:58:16 +03:00
|
|
|
bool,
|
|
|
|
int32_t> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "syncFrameMetrics";
|
|
|
|
static constexpr char signature[] =
|
2015-09-12 04:58:16 +03:00
|
|
|
"(FFFFFFFIIIIFZI)Lorg/mozilla/gecko/gfx/ViewTransform;";
|
2015-01-10 03:33:57 +03:00
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-09-12 04:58:16 +03:00
|
|
|
auto SyncFrameMetrics(float, float, float, float, float, float, float, int32_t, int32_t, int32_t, int32_t, float, bool, int32_t) const -> mozilla::jni::Object::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-05-16 19:17:17 +03:00
|
|
|
struct SynthesizeNativeMouseEvent_t {
|
|
|
|
typedef GeckoLayerClient Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "synthesizeNativeMouseEvent";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(III)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-05-16 19:17:17 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto SynthesizeNativeMouseEvent(int32_t, int32_t, int32_t) const -> void;
|
|
|
|
|
2016-02-23 18:17:46 +03:00
|
|
|
struct SynthesizeNativeTouchPoint_t {
|
|
|
|
typedef GeckoLayerClient Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
double,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "synthesizeNativeTouchPoint";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IIIIDI)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-02-23 18:17:46 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto SynthesizeNativeTouchPoint(int32_t, int32_t, int32_t, int32_t, double, int32_t) const -> void;
|
|
|
|
|
2016-09-01 19:24:39 +03:00
|
|
|
struct ClearColor_t {
|
|
|
|
typedef GeckoLayerClient Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "mClearColor";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"I";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto ClearColor() const -> int32_t;
|
|
|
|
|
|
|
|
auto ClearColor(int32_t) const -> void;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2013-11-12 22:41:00 +04:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class ImmutableViewportMetrics : public mozilla::jni::ObjectBase<ImmutableViewportMetrics>
|
2015-07-11 06:41:36 +03:00
|
|
|
{
|
2013-11-12 22:41:00 +04:00
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit ImmutableViewportMetrics(const Context& ctx) : ObjectBase<ImmutableViewportMetrics>(ctx) {}
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct New_t {
|
|
|
|
typedef ImmutableViewportMetrics Owner;
|
|
|
|
typedef ImmutableViewportMetrics::LocalRef ReturnType;
|
|
|
|
typedef ImmutableViewportMetrics::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
2015-08-18 21:27:19 +03:00
|
|
|
int32_t,
|
|
|
|
int32_t,
|
2015-07-11 06:41:36 +03:00
|
|
|
float> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "<init>";
|
|
|
|
static constexpr char signature[] =
|
2015-08-18 21:27:19 +03:00
|
|
|
"(FFFFFFFFFFIIF)V";
|
2015-01-10 03:33:57 +03:00
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-18 21:27:19 +03:00
|
|
|
static auto New(float, float, float, float, float, float, float, float, float, float, int32_t, int32_t, float) -> ImmutableViewportMetrics::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2013-11-12 22:41:00 +04:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class LayerRenderer : public mozilla::jni::ObjectBase<LayerRenderer>
|
2015-12-24 06:03:33 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit LayerRenderer(const Context& ctx) : ObjectBase<LayerRenderer>(ctx) {}
|
2015-12-24 06:03:33 +03:00
|
|
|
|
|
|
|
class Frame;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-12-24 06:03:33 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class LayerRenderer::Frame : public mozilla::jni::ObjectBase<Frame>
|
2015-12-24 06:03:33 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit Frame(const Context& ctx) : ObjectBase<Frame>(ctx) {}
|
2015-12-24 06:03:33 +03:00
|
|
|
|
|
|
|
struct BeginDrawing_t {
|
|
|
|
typedef Frame Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "beginDrawing";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-12-24 06:03:33 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto BeginDrawing() const -> void;
|
|
|
|
|
|
|
|
struct EndDrawing_t {
|
|
|
|
typedef Frame Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "endDrawing";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-12-24 06:03:33 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto EndDrawing() const -> void;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2015-12-24 06:03:33 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class LayerView : public mozilla::jni::ObjectBase<LayerView>
|
2015-07-11 06:41:36 +03:00
|
|
|
{
|
2013-11-12 22:41:00 +04:00
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit LayerView(const Context& ctx) : ObjectBase<LayerView>(ctx) {}
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-01 21:21:31 +03:00
|
|
|
class Compositor;
|
|
|
|
|
2016-08-20 00:17:25 +03:00
|
|
|
struct GetCompositor_t {
|
|
|
|
typedef LayerView Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getCompositor";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Ljava/lang/Object;";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto GetCompositor() const -> mozilla::jni::Object::LocalRef;
|
|
|
|
|
2016-08-04 16:15:17 +03:00
|
|
|
struct UpdateZoomedView_t {
|
2015-01-21 07:59:23 +03:00
|
|
|
typedef LayerView Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
2016-07-21 20:49:04 +03:00
|
|
|
mozilla::jni::ByteBuffer::Param> Args;
|
2015-01-21 07:59:23 +03:00
|
|
|
static constexpr char name[] = "updateZoomedView";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/nio/ByteBuffer;)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-21 07:59:23 +03:00
|
|
|
};
|
|
|
|
|
2016-08-04 16:15:17 +03:00
|
|
|
static auto UpdateZoomedView(mozilla::jni::ByteBuffer::Param) -> void;
|
2015-01-21 07:59:23 +03:00
|
|
|
|
2016-08-20 00:17:25 +03:00
|
|
|
struct CompositorCreated_t {
|
|
|
|
typedef LayerView Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "mCompositorCreated";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Z";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto CompositorCreated() const -> bool;
|
|
|
|
|
|
|
|
auto CompositorCreated(bool) const -> void;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
2016-08-20 00:17:25 +03:00
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2013-11-12 22:41:00 +04:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class LayerView::Compositor : public mozilla::jni::ObjectBase<Compositor>
|
2016-08-01 21:21:31 +03:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit Compositor(const Context& ctx) : ObjectBase<Compositor>(ctx) {}
|
2016-08-01 21:21:31 +03:00
|
|
|
|
|
|
|
struct AttachToJava_t {
|
|
|
|
typedef Compositor Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param,
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "attachToJava";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Lorg/mozilla/gecko/gfx/GeckoLayerClient;Lorg/mozilla/gecko/gfx/NativePanZoomController;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2016-08-26 19:25:57 +03:00
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-08-01 21:21:31 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct CreateCompositor_t {
|
|
|
|
typedef Compositor Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
2016-08-26 19:25:57 +03:00
|
|
|
int32_t,
|
|
|
|
mozilla::jni::Object::Param> Args;
|
2016-08-01 21:21:31 +03:00
|
|
|
static constexpr char name[] = "createCompositor";
|
|
|
|
static constexpr char signature[] =
|
2016-08-26 19:25:57 +03:00
|
|
|
"(IILjava/lang/Object;)V";
|
2016-08-01 21:21:31 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::PROXY;
|
2016-08-01 21:21:31 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct Destroy_t {
|
|
|
|
typedef Compositor Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "destroy";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-08-01 21:21:31 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto Destroy() const -> void;
|
|
|
|
|
|
|
|
struct DisposeNative_t {
|
|
|
|
typedef Compositor Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "disposeNative";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2016-08-26 19:25:57 +03:00
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-08-01 21:21:31 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct OnSizeChanged_t {
|
|
|
|
typedef Compositor Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "onSizeChanged";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IIII)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2016-08-26 19:25:57 +03:00
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-08-01 21:21:31 +03:00
|
|
|
};
|
|
|
|
|
2016-08-24 01:55:12 +03:00
|
|
|
struct Reattach_t {
|
|
|
|
typedef Compositor Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "reattach";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto Reattach() const -> void;
|
|
|
|
|
2016-08-01 21:21:31 +03:00
|
|
|
struct SyncInvalidateAndScheduleComposite_t {
|
|
|
|
typedef Compositor Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "syncInvalidateAndScheduleComposite";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-08-01 21:21:31 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct SyncPauseCompositor_t {
|
|
|
|
typedef Compositor Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "syncPauseCompositor";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-08-01 21:21:31 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct SyncResumeResizeCompositor_t {
|
|
|
|
typedef Compositor Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
2016-08-26 19:25:57 +03:00
|
|
|
int32_t,
|
|
|
|
mozilla::jni::Object::Param> Args;
|
2016-08-01 21:21:31 +03:00
|
|
|
static constexpr char name[] = "syncResumeResizeCompositor";
|
|
|
|
static constexpr char signature[] =
|
2016-08-26 19:25:57 +03:00
|
|
|
"(IILjava/lang/Object;)V";
|
2016-08-01 21:21:31 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2016-08-26 19:25:57 +03:00
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-08-01 21:21:31 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-08-01 21:21:31 +03:00
|
|
|
|
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class NativePanZoomController : public mozilla::jni::ObjectBase<NativePanZoomController>
|
2015-07-11 06:41:36 +03:00
|
|
|
{
|
2013-11-12 22:41:00 +04:00
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit NativePanZoomController(const Context& ctx) : ObjectBase<NativePanZoomController>(ctx) {}
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-01-29 00:00:05 +03:00
|
|
|
struct AdjustScrollForSurfaceShift_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
float,
|
|
|
|
float> Args;
|
|
|
|
static constexpr char name[] = "adjustScrollForSurfaceShift";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(FF)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-01-29 00:00:05 +03:00
|
|
|
};
|
|
|
|
|
2016-01-15 21:05:44 +03:00
|
|
|
struct Destroy_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "destroy";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-01-15 21:05:44 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto Destroy() const -> void;
|
|
|
|
|
|
|
|
struct DisposeNative_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "disposeNative";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
2016-08-19 01:03:04 +03:00
|
|
|
mozilla::jni::DispatchTarget::GECKO;
|
2016-01-15 21:05:44 +03:00
|
|
|
};
|
|
|
|
|
2016-03-12 02:29:50 +03:00
|
|
|
struct HandleMotionEvent_t {
|
2016-02-18 00:57:12 +03:00
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
2016-03-12 02:29:50 +03:00
|
|
|
int32_t,
|
2016-02-18 00:57:12 +03:00
|
|
|
int32_t,
|
|
|
|
int64_t,
|
|
|
|
int32_t,
|
2016-03-12 02:29:50 +03:00
|
|
|
mozilla::jni::IntArray::Param,
|
|
|
|
mozilla::jni::FloatArray::Param,
|
|
|
|
mozilla::jni::FloatArray::Param,
|
|
|
|
mozilla::jni::FloatArray::Param,
|
|
|
|
mozilla::jni::FloatArray::Param,
|
|
|
|
mozilla::jni::FloatArray::Param,
|
|
|
|
mozilla::jni::FloatArray::Param> Args;
|
|
|
|
static constexpr char name[] = "handleMotionEvent";
|
2016-02-18 00:57:12 +03:00
|
|
|
static constexpr char signature[] =
|
2016-03-12 02:29:50 +03:00
|
|
|
"(IIJI[I[F[F[F[F[F[F)Z";
|
2016-02-18 00:57:12 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-02-18 00:57:12 +03:00
|
|
|
};
|
|
|
|
|
2016-04-06 01:12:48 +03:00
|
|
|
struct HandleMotionEventVelocity_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int64_t,
|
|
|
|
float> Args;
|
|
|
|
static constexpr char name[] = "handleMotionEventVelocity";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(JF)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-04-06 01:12:48 +03:00
|
|
|
};
|
|
|
|
|
2016-03-12 02:29:50 +03:00
|
|
|
struct HandleMouseEvent_t {
|
2016-01-15 21:05:44 +03:00
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int64_t,
|
|
|
|
int32_t,
|
2016-03-12 02:29:50 +03:00
|
|
|
float,
|
|
|
|
float,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "handleMouseEvent";
|
2016-01-15 21:05:44 +03:00
|
|
|
static constexpr char signature[] =
|
2016-03-12 02:29:50 +03:00
|
|
|
"(IJIFFI)Z";
|
2016-01-15 21:05:44 +03:00
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-01-15 21:05:44 +03:00
|
|
|
};
|
|
|
|
|
2016-02-12 03:34:58 +03:00
|
|
|
struct HandleScrollEvent_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int64_t,
|
|
|
|
int32_t,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float> Args;
|
|
|
|
static constexpr char name[] = "handleScrollEvent";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(JIFFFF)Z";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-02-12 03:34:58 +03:00
|
|
|
};
|
|
|
|
|
2016-01-15 21:05:44 +03:00
|
|
|
struct SetIsLongpressEnabled_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
|
|
|
static constexpr char name[] = "nativeSetIsLongpressEnabled";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-01-15 21:05:44 +03:00
|
|
|
};
|
|
|
|
|
2016-03-11 02:06:13 +03:00
|
|
|
struct OnSelectionDragState_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
|
|
|
static constexpr char name[] = "onSelectionDragState";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-03-11 02:06:13 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto OnSelectionDragState(bool) const -> void;
|
|
|
|
|
2016-03-25 01:00:27 +03:00
|
|
|
struct SetScrollingRootContent_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
|
|
|
static constexpr char name[] = "setScrollingRootContent";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::UI;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-03-25 01:00:27 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto SetScrollingRootContent(bool) const -> void;
|
|
|
|
|
2016-01-26 04:27:24 +03:00
|
|
|
struct UpdateOverscrollOffset_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
float,
|
|
|
|
float> Args;
|
|
|
|
static constexpr char name[] = "updateOverscrollOffset";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(FF)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-01-26 04:27:24 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto UpdateOverscrollOffset(float, float) const -> void;
|
|
|
|
|
|
|
|
struct UpdateOverscrollVelocity_t {
|
|
|
|
typedef NativePanZoomController Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
float,
|
|
|
|
float> Args;
|
|
|
|
static constexpr char name[] = "updateOverscrollVelocity";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(FF)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-01-26 04:27:24 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto UpdateOverscrollVelocity(float, float) const -> void;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2016-01-15 21:05:44 +03:00
|
|
|
template<class Impl> class Natives;
|
2013-11-12 22:41:00 +04:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class StackScroller : public mozilla::jni::ObjectBase<StackScroller>
|
2016-06-29 23:42:12 +03:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit StackScroller(const Context& ctx) : ObjectBase<StackScroller>(ctx) {}
|
2016-06-29 23:42:12 +03:00
|
|
|
|
|
|
|
struct New_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef StackScroller::LocalRef ReturnType;
|
|
|
|
typedef StackScroller::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "<init>";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Landroid/content/Context;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto New(mozilla::jni::Object::Param, StackScroller::LocalRef*) -> nsresult;
|
|
|
|
|
|
|
|
struct AbortAnimation_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "abortAnimation";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto AbortAnimation() const -> nsresult;
|
|
|
|
|
|
|
|
struct ComputeScrollOffset_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int64_t> Args;
|
|
|
|
static constexpr char name[] = "computeScrollOffset";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(J)Z";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto ComputeScrollOffset(int64_t, bool*) const -> nsresult;
|
|
|
|
|
|
|
|
struct Fling_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int64_t> Args;
|
|
|
|
static constexpr char name[] = "fling";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IIIIIIIIIIJ)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto Fling(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int64_t) const -> nsresult;
|
|
|
|
|
|
|
|
struct ForceFinished_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
|
|
|
static constexpr char name[] = "forceFinished";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto ForceFinished(bool) const -> nsresult;
|
|
|
|
|
2016-06-29 23:42:17 +03:00
|
|
|
struct GetCurrSpeedX_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getCurrSpeedX";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()F";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:17 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto GetCurrSpeedX(float*) const -> nsresult;
|
|
|
|
|
|
|
|
struct GetCurrSpeedY_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getCurrSpeedY";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()F";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:17 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto GetCurrSpeedY(float*) const -> nsresult;
|
|
|
|
|
2016-06-29 23:42:12 +03:00
|
|
|
struct GetCurrX_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getCurrX";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()I";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto GetCurrX(int32_t*) const -> nsresult;
|
|
|
|
|
|
|
|
struct GetCurrY_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getCurrY";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()I";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto GetCurrY(int32_t*) const -> nsresult;
|
|
|
|
|
|
|
|
struct GetFinalX_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getFinalX";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()I";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto GetFinalX(int32_t*) const -> nsresult;
|
|
|
|
|
|
|
|
struct GetFinalY_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getFinalY";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()I";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto GetFinalY(int32_t*) const -> nsresult;
|
|
|
|
|
|
|
|
struct InitContants_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "initContants";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto InitContants() -> nsresult;
|
|
|
|
|
|
|
|
struct IsFinished_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "isFinished";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto IsFinished(bool*) const -> nsresult;
|
|
|
|
|
|
|
|
struct SetFinalX_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "setFinalX";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto SetFinalX(int32_t) const -> nsresult;
|
|
|
|
|
|
|
|
struct SpringBack_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int64_t> Args;
|
|
|
|
static constexpr char name[] = "springBack";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IIIIIIJ)Z";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto SpringBack(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int64_t, bool*) const -> nsresult;
|
|
|
|
|
|
|
|
struct StartScroll_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int32_t,
|
|
|
|
int64_t,
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "startScroll";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(IIIIJI)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto StartScroll(int32_t, int32_t, int32_t, int32_t, int64_t, int32_t) const -> nsresult;
|
|
|
|
|
|
|
|
struct ViscousFluid_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
float> Args;
|
|
|
|
static constexpr char name[] = "viscousFluid";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(F)F";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto ViscousFluid(float, float*) -> nsresult;
|
|
|
|
|
|
|
|
static const int32_t FLING_MODE = 1;
|
|
|
|
|
|
|
|
static const int32_t SCROLL_MODE = 0;
|
|
|
|
|
|
|
|
struct MFlywheel_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "mFlywheel";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Z";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto MFlywheel(bool*) const -> nsresult;
|
|
|
|
|
|
|
|
struct MMode_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "mMode";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"I";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto MMode(int32_t*) const -> nsresult;
|
|
|
|
|
|
|
|
auto MMode(int32_t) const -> nsresult;
|
|
|
|
|
|
|
|
struct MScrollerX_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "mScrollerX";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/gfx/StackScroller$SplineStackScroller;";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto MScrollerX(mozilla::jni::Object::LocalRef*) const -> nsresult;
|
|
|
|
|
|
|
|
struct MScrollerY_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "mScrollerY";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/gfx/StackScroller$SplineStackScroller;";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto MScrollerY(mozilla::jni::Object::LocalRef*) const -> nsresult;
|
|
|
|
|
|
|
|
struct SViscousFluidNormalize_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "sViscousFluidNormalize";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto SViscousFluidNormalize(float*) -> nsresult;
|
|
|
|
|
|
|
|
static auto SViscousFluidNormalize(float) -> nsresult;
|
|
|
|
|
|
|
|
struct SViscousFluidScale_t {
|
|
|
|
typedef StackScroller Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "sViscousFluidScale";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::NSRESULT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-06-29 23:42:12 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto SViscousFluidScale(float*) -> nsresult;
|
|
|
|
|
|
|
|
static auto SViscousFluidScale(float) -> nsresult;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-06-29 23:42:12 +03:00
|
|
|
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class ViewTransform : public mozilla::jni::ObjectBase<ViewTransform>
|
2015-07-11 06:41:36 +03:00
|
|
|
{
|
2015-01-10 03:33:57 +03:00
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit ViewTransform(const Context& ctx) : ObjectBase<ViewTransform>(ctx) {}
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct New_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef ViewTransform::LocalRef ReturnType;
|
|
|
|
typedef ViewTransform::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
float,
|
|
|
|
float,
|
|
|
|
float> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "<init>";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(FFF)V";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto New(float, float, float) -> ViewTransform::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct FixedLayerMarginBottom_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "fixedLayerMarginBottom";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto FixedLayerMarginBottom() const -> float;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto FixedLayerMarginBottom(float) const -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct FixedLayerMarginLeft_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "fixedLayerMarginLeft";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto FixedLayerMarginLeft() const -> float;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto FixedLayerMarginLeft(float) const -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct FixedLayerMarginRight_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "fixedLayerMarginRight";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto FixedLayerMarginRight() const -> float;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto FixedLayerMarginRight(float) const -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct FixedLayerMarginTop_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "fixedLayerMarginTop";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto FixedLayerMarginTop() const -> float;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto FixedLayerMarginTop(float) const -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-18 21:27:20 +03:00
|
|
|
struct Height_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "height";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-18 21:27:20 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto Height() const -> float;
|
|
|
|
|
|
|
|
auto Height(float) const -> void;
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct Scale_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "scale";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto Scale() const -> float;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto Scale(float) const -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-18 21:27:20 +03:00
|
|
|
struct Width_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "width";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-08-18 21:27:20 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
auto Width() const -> float;
|
|
|
|
|
|
|
|
auto Width(float) const -> void;
|
|
|
|
|
2015-01-10 03:33:57 +03:00
|
|
|
struct X_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "x";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto X() const -> float;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto X(float) const -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct Y_t {
|
|
|
|
typedef ViewTransform Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "y";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"F";
|
|
|
|
static const bool isStatic = false;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto Y() const -> float;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
auto Y(float) const -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2013-11-12 22:41:00 +04:00
|
|
|
};
|
|
|
|
|
2016-12-20 09:18:35 +03:00
|
|
|
class VsyncSource : public mozilla::jni::ObjectBase<VsyncSource>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit VsyncSource(const Context& ctx) : ObjectBase<VsyncSource>(ctx) {}
|
|
|
|
|
|
|
|
struct GetRefreshRate_t {
|
|
|
|
typedef VsyncSource Owner;
|
|
|
|
typedef float ReturnType;
|
|
|
|
typedef float SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "getRefreshRate";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()F";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto GetRefreshRate() const -> float;
|
|
|
|
|
|
|
|
struct NotifyVsync_t {
|
|
|
|
typedef VsyncSource Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "nativeNotifyVsync";
|
|
|
|
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 ObserveVsync_t {
|
|
|
|
typedef VsyncSource Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
|
|
|
static constexpr char name[] = "observeVsync";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)Z";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto ObserveVsync(bool) const -> bool;
|
|
|
|
|
2017-01-09 22:10:23 +03:00
|
|
|
struct INSTANCE_t {
|
|
|
|
typedef VsyncSource Owner;
|
|
|
|
typedef VsyncSource::LocalRef ReturnType;
|
|
|
|
typedef VsyncSource::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "INSTANCE";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"Lorg/mozilla/gecko/gfx/VsyncSource;";
|
|
|
|
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 INSTANCE() -> VsyncSource::LocalRef;
|
|
|
|
|
2016-12-20 09:18:35 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
|
|
|
|
template<class Impl> class Natives;
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class Clipboard : public mozilla::jni::ObjectBase<Clipboard>
|
2015-07-11 06:41:36 +03:00
|
|
|
{
|
2015-01-10 03:33:57 +03:00
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit Clipboard(const Context& ctx) : ObjectBase<Clipboard>(ctx) {}
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct ClearText_t {
|
|
|
|
typedef Clipboard Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "clearText";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto ClearText() -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct GetText_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef Clipboard Owner;
|
|
|
|
typedef mozilla::jni::String::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::String::Param SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "getText";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Ljava/lang/String;";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto GetText() -> mozilla::jni::String::LocalRef;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
|
|
|
struct HasText_t {
|
|
|
|
typedef Clipboard Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "hasText";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()Z";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2015-08-13 07:53:39 +03:00
|
|
|
static auto HasText() -> bool;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
struct SetText_t {
|
2015-01-10 03:33:57 +03:00
|
|
|
typedef Clipboard Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
2015-07-11 06:41:36 +03:00
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
2015-01-10 03:33:57 +03:00
|
|
|
static constexpr char name[] = "setText";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/CharSequence;)V";
|
|
|
|
static const bool isStatic = true;
|
2015-07-11 06:41:36 +03:00
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2015-01-10 03:33:57 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static auto SetText(mozilla::jni::String::Param) -> void;
|
2015-01-10 03:33:57 +03:00
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2013-11-12 22:41:00 +04:00
|
|
|
};
|
|
|
|
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
class EventCallback : public mozilla::jni::ObjectBase<EventCallback>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit EventCallback(const Context& ctx) : ObjectBase<EventCallback>(ctx) {}
|
|
|
|
|
|
|
|
struct SendError_t {
|
|
|
|
typedef EventCallback Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "sendError";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/Object;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto SendError(mozilla::jni::Object::Param) const -> void;
|
|
|
|
|
|
|
|
struct SendSuccess_t {
|
|
|
|
typedef EventCallback Owner;
|
|
|
|
typedef void ReturnType;
|
|
|
|
typedef void SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "sendSuccess";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/Object;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto SendSuccess(mozilla::jni::Object::Param) const -> void;
|
|
|
|
|
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
class GeckoBundle : public mozilla::jni::ObjectBase<GeckoBundle>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static const char name[];
|
|
|
|
|
|
|
|
explicit GeckoBundle(const Context& ctx) : ObjectBase<GeckoBundle>(ctx) {}
|
|
|
|
|
|
|
|
struct New_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef GeckoBundle::LocalRef ReturnType;
|
|
|
|
typedef GeckoBundle::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::ObjectArray::Param,
|
|
|
|
mozilla::jni::ObjectArray::Param> Args;
|
|
|
|
static constexpr char name[] = "<init>";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"([Ljava/lang/String;[Ljava/lang/Object;)V";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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 New(mozilla::jni::ObjectArray::Param, mozilla::jni::ObjectArray::Param) -> GeckoBundle::LocalRef;
|
|
|
|
|
|
|
|
struct Box_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
double> Args;
|
|
|
|
static constexpr char name[] = "box";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(D)Ljava/lang/Object;";
|
|
|
|
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 Box(double) -> mozilla::jni::Object::LocalRef;
|
|
|
|
|
|
|
|
struct Box2_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
int32_t> Args;
|
|
|
|
static constexpr char name[] = "box";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(I)Ljava/lang/Object;";
|
|
|
|
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 Box(int32_t) -> mozilla::jni::Object::LocalRef;
|
|
|
|
|
|
|
|
struct Box3_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef mozilla::jni::Object::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::Object::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
bool> Args;
|
|
|
|
static constexpr char name[] = "box";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Z)Ljava/lang/Object;";
|
|
|
|
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 Box(bool) -> mozilla::jni::Object::LocalRef;
|
|
|
|
|
|
|
|
struct Keys_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef mozilla::jni::ObjectArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::ObjectArray::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "keys";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()[Ljava/lang/String;";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto Keys() const -> mozilla::jni::ObjectArray::LocalRef;
|
|
|
|
|
|
|
|
struct UnboxBoolean_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "unboxBoolean";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/Boolean;)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 UnboxBoolean(mozilla::jni::Object::Param) -> bool;
|
|
|
|
|
|
|
|
struct UnboxDouble_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef double ReturnType;
|
|
|
|
typedef double SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "unboxDouble";
|
|
|
|
static constexpr char signature[] =
|
2017-02-02 01:35:45 +03:00
|
|
|
"(Ljava/lang/Number;)D";
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
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 UnboxDouble(mozilla::jni::Object::Param) -> double;
|
|
|
|
|
|
|
|
struct UnboxInteger_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef int32_t ReturnType;
|
|
|
|
typedef int32_t SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "unboxInteger";
|
|
|
|
static constexpr char signature[] =
|
2017-02-02 01:35:45 +03:00
|
|
|
"(Ljava/lang/Number;)I";
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
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 UnboxInteger(mozilla::jni::Object::Param) -> int32_t;
|
|
|
|
|
2017-02-02 01:35:45 +03:00
|
|
|
struct UnboxString_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef mozilla::jni::String::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::String::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param> Args;
|
|
|
|
static constexpr char name[] = "unboxString";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/Object;)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 UnboxString(mozilla::jni::Object::Param) -> mozilla::jni::String::LocalRef;
|
|
|
|
|
Bug 1307820 - Implement per-GeckoView messaging; r=snorp r=sebastian
Bug 1307820 - 1a. Move GeckoApp EventDispatcher to GeckoView; r=snorp
Make it a GeckoView-specific EventDispatcher instead of
GeckoApp-specific, so that GeckoView consumers can benefit from a
per-view EventDispatcher. In addition, a few events like Gecko:Ready are
moved back to the global EventDispatcher because that makes more sense.
Bug 1307820 - 1b. Don't use GeckoApp EventDispatcher during inflation; r=snorp
During layout inflation, we don't yet have GeckoView and therefore the
GeckoView EventDispatcher, so we should not register events until later,
typically during onAttachedToWindow.
Bug 1307820 - 2. Introduce GeckoBundle; r=snorp
The Android Bundle class has several disadvantages when used for holding
structured data from JS.
The most obvious one is the differentiation between int and double,
which doesn't exist in JS. So when a JS number is converted to either a
Bundle int or double, we run the risk of making a wrong conversion,
resulting in a type mismatch exception when Java uses the Bundle. This
extends to number arrays from JS.
There is one more gotcha when using arrays. When we receive an empty
array from JS, there is no way for us to determine the type of the
array, because even empty arrays in Java have types. We are forced to
pick an arbitrary type like boolean[], which can easily result in a type
mismatch exception when using the array on the Java side.
In addition, Bundle is fairly cumbersome, and we cannot access the inner
structures of Bundle from Java or JNI, making it harder to use.
With these factors in mind, this patch introduces GeckoBundle as a
better choice for Gecko/Java communication. It is almost fully
API-compatible with the Android Bundle; only the Bundle array methods
are different. It resolves the numbers problem by performing conversions
if necessary, and it is a lot more lightweight than Bundle.
Bug 1307820 - 3. Convert BundleEventListener to use GeckoBundle; r=snorp
Convert BundleEventListener from using Bundle to using GeckoBundle.
Because NativeJSContainer still only supports Bundle, we do an extra
conversion when sending Bundle messages, but eventually, as we eliminate
the use of NativeJSContainer, that will go away as well.
Bug 1307820 - 4. Introduce EventDispatcher interfaces; r=snorp
Introduce several new XPCOM interfaces for the new EventDispatcher API,
these interfaces are mostly mirrored after their Java counterparts.
* nsIAndroidEventDispatcher is the main interface for
registering/unregistering listeners and for dispatching events from
JS/C++.
* nsIAndroidEventListener is the interface that JS/C++ clients implement
to receive events.
* nsIAndroidEventCallback is the interface that JS/C++ clients implement
to receive responses from dispatched events.
* nsIAndroidView is the new interface that every window receives
that is specific to the window/GeckoView pair. It is passed to chrome
scripts through window arguments.
Bug 1307820 - 5. Remove EventDispatcher references from gfx code; r=snorp
EventDispatcher was used for JPZC, but NPZC doesn't use it anymore.
Bug 1307820 - 6. General JNI template improvements; r=snorp
This patch includes several improvements to the JNI templates.
* Context::RawClassRef is removed to avoid misuse, as Context::ClassRef
should be used instead.
* Fix a compile error, in certain usages, in the DisposeNative overload
in NativeStub.
* Add Ref::IsInstanceOf and Context::IsInstanceOf to mirror the
JNIEnv::IsInstanceOf call.
* Add Ref::operator* and Context::operator* to provide an easy way to
get a Context object.
* Add built-in declarations for boxed Java objects (e.g. Boolean,
Integer, etc).
* Add ObjectArray::New for creating new object arrays of specific types.
* Add lvalue qualifiers to LocalRef::operator= and GlobalRef::operator=,
to prevent accidentally assigning to rvalues. (e.g.
`objectArray->GetElement(0) = newObject;`, which won't work as intended.)
Bug 1307820 - 7. Support ownership through RefPtr for native JNI objects; r=snorp
In addition to direct ownership and weak pointer ownership, add a third
ownership model where a native JNI object owns a RefPtr that holds a
strong reference to the actual C++ object. This ownership model works
well with ref-counted objects such as XPCOM objects, and is activated
through the presence of public members AddRef() and Release() in the C++
object.
Bug 1307820 - 8. Implement Gecko-side EventDispatcher; r=snorp
Add a skeletal implementation of EventDispatcher on the Gecko side.
Each widget::EventDispatcher will be associated with a Java
EventDispatcher, so events can be dispatched from Gecko to Java and vice
versa. AndroidBridge and nsWindow will implement
nsIAndroidEventDispatcher through widget::EventDispatcher.
Other patches will add more complete functionality such as
GeckoBundle/JSObject translation and support for callbacks.
Bug 1307820 - 9. Implement dispatching between Gecko/Java; r=snorp
Implement translation between JSObject and GeckoBundle, and use that for
dispatching events from Gecko to Java and vice versa.
Bug 1307820 - 10. Implement callback support; r=snorp
Implement callback support for both Gecko-to-Java events and
Java-to-Gecko events.
For Gecko-to-Java, we translate nsIAndroidEventCallback to a Java
EventCallback through NativeCallbackDelegate and pass it to the Java
listener.
For Java-to-Gecko, we translate EventCallback to a
nsIAndroidEventCallback through JavaCallbackDelegate and pass it to the
Gecko listener. There is another JavaCallbackDelegate on the Java side
that redirects the callback to a particular thread. For example, if the
event was dispatched from the UI thread, we make sure the callback
happens on the UI thread as well.
Bug 1307820 - 11. Add BundleEventListener support for Gecko thread; r=snorp
Add support for BundleEventListener on the Gecko thread, so that we can
use it to replace any existing GeckoEventListener or NativeEventListener
implementations that require the listener be run synchronously on the
Gecko thread.
Bug 1307820 - 12. Add global EventDispatcher in AndroidBridge; r=snorp
Add an instance of EventDispatcher to AndroidBridge to act as a global
event dispatcher.
Bug 1307820 - 13. Add per-nsWindow EventDispatcher; r=snorp
Add an instance of EventDispatcher to each nsWindow through an
AndroidView object, which implements nsIAndroidView. The nsIAndroidView
is passed to the chrome script through the window argument when opening
the window.
Bug 1307820 - 14. Update auto-generated bindings; r=me
Bug 1307820 - 15. Update testEventDispatcher; r=snorp
Update testEventDispatcher to include new functionalities in
EventDisptcher.
* Add tests for dispatching events to UI/background thread through
nsIAndroidEventDispatcher::dispatch.
* Add tests for dispatching events to UI/background thread through
EventDispatcher.dispatch.
* Add tests for dispatching events to Gecko thread through
EventDispatcher.dispatch.
Each kind of test exercises both the global EventDispatcher through
EventDispatcher.getInstance() and the per-GeckoView EventDispatcher
through GeckoApp.getEventDispatcher().
2016-11-14 16:29:50 +03:00
|
|
|
struct Values_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef mozilla::jni::ObjectArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::ObjectArray::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "values";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"()[Ljava/lang/Object;";
|
|
|
|
static const bool isStatic = false;
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
auto Values() const -> mozilla::jni::ObjectArray::LocalRef;
|
|
|
|
|
|
|
|
struct EMPTY_BOOLEAN_ARRAY_t {
|
|
|
|
typedef GeckoBundle Owner;
|
|
|
|
typedef mozilla::jni::BooleanArray::LocalRef ReturnType;
|
|
|
|
typedef mozilla::jni::BooleanArray::Param SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "EMPTY_BOOLEAN_ARRAY";
|
|
|
|
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 EMPTY_BOOLEAN_ARRAY() -> mozilla::jni::BooleanArray::LocalRef;
|
|
|
|
|
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::GECKO;
|
|
|
|
|
|
|
|
};
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
class HardwareCodecCapabilityUtils : public mozilla::jni::ObjectBase<HardwareCodecCapabilityUtils>
|
2016-01-22 23:33:25 +03:00
|
|
|
{
|
|
|
|
public:
|
2016-06-27 21:49:55 +03:00
|
|
|
static const char name[];
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
explicit HardwareCodecCapabilityUtils(const Context& ctx) : ObjectBase<HardwareCodecCapabilityUtils>(ctx) {}
|
2016-01-22 23:33:25 +03:00
|
|
|
|
2016-10-26 11:57:55 +03:00
|
|
|
struct HasHWVP9_t {
|
|
|
|
typedef HardwareCodecCapabilityUtils Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<> Args;
|
|
|
|
static constexpr char name[] = "HasHWVP9";
|
|
|
|
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::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
|
|
|
};
|
|
|
|
|
|
|
|
static auto HasHWVP9() -> bool;
|
|
|
|
|
2016-11-23 09:11:22 +03:00
|
|
|
struct CheckSupportsAdaptivePlayback_t {
|
|
|
|
typedef HardwareCodecCapabilityUtils Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::Object::Param,
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "checkSupportsAdaptivePlayback";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Landroid/media/MediaCodec;Ljava/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::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
|
|
|
};
|
|
|
|
|
|
|
|
static auto CheckSupportsAdaptivePlayback(mozilla::jni::Object::Param, mozilla::jni::String::Param) -> bool;
|
|
|
|
|
2016-01-22 23:33:25 +03:00
|
|
|
struct FindDecoderCodecInfoForMimeType_t {
|
|
|
|
typedef HardwareCodecCapabilityUtils Owner;
|
|
|
|
typedef bool ReturnType;
|
|
|
|
typedef bool SetterType;
|
|
|
|
typedef mozilla::jni::Args<
|
|
|
|
mozilla::jni::String::Param> Args;
|
|
|
|
static constexpr char name[] = "findDecoderCodecInfoForMimeType";
|
|
|
|
static constexpr char signature[] =
|
|
|
|
"(Ljava/lang/String;)Z";
|
|
|
|
static const bool isStatic = true;
|
|
|
|
static const mozilla::jni::ExceptionMode exceptionMode =
|
|
|
|
mozilla::jni::ExceptionMode::ABORT;
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
|
|
|
static const mozilla::jni::DispatchTarget dispatchTarget =
|
|
|
|
mozilla::jni::DispatchTarget::CURRENT;
|
2016-01-22 23:33:25 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
static auto FindDecoderCodecInfoForMimeType(mozilla::jni::String::Param) -> bool;
|
|
|
|
|
2016-08-13 06:15:52 +03:00
|
|
|
static const mozilla::jni::CallingThread callingThread =
|
|
|
|
mozilla::jni::CallingThread::ANY;
|
2016-02-10 01:27:29 +03:00
|
|
|
|
2016-01-22 23:33:25 +03:00
|
|
|
};
|
|
|
|
|
2016-08-05 20:23:44 +03:00
|
|
|
} /* java */
|
2013-11-12 22:41:00 +04:00
|
|
|
} /* mozilla */
|
2015-07-11 06:41:36 +03:00
|
|
|
#endif // GeneratedJNIWrappers_h
|