Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update the naming scheme for the GodotPlugin's methods #37174

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 7 additions & 10 deletions platform/android/java/lib/src/org/godotengine/godot/Godot.java
Original file line number Diff line number Diff line change
Expand Up @@ -55,16 +55,13 @@
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.os.Handler;
import android.os.Looper;
import android.os.Messenger;
import android.os.VibrationEffect;
import android.os.Vibrator;
import android.provider.Settings.Secure;
import android.support.annotation.CallSuper;
import android.support.annotation.Keep;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.FragmentActivity;
import android.view.Display;
import android.view.KeyEvent;
Expand Down Expand Up @@ -197,12 +194,12 @@ public void onRequestPermissionsResult(int requestCode, String[] permissions, in
};

/**
* Invoked on the GL thread when the Godot main loop has started.
* Invoked on the render thread when the Godot main loop has started.
*/
@CallSuper
protected void onGLGodotMainLoopStarted() {
protected void onGodotMainLoopStarted() {
for (GodotPlugin plugin : pluginRegistry.getAllPlugins()) {
plugin.onGLGodotMainLoopStarted();
plugin.onGodotMainLoopStarted();
}
}

Expand Down Expand Up @@ -247,7 +244,7 @@ public void run() {

// Must occur after GodotLib.setup has completed.
for (GodotPlugin plugin : pluginRegistry.getAllPlugins()) {
plugin.onGLRegisterPluginWithGodotNative();
plugin.onRegisterPluginWithGodotNative();
}

setKeepScreenOn("True".equals(GodotLib.getGlobal("display/window/energy_saving/keep_screen_on")));
Expand Down Expand Up @@ -787,11 +784,11 @@ public void run() {
}

/**
* Queue a runnable to be run on the GL thread.
* Queue a runnable to be run on the render thread.
* <p>
* This must be called after the GL thread has started.
* This must be called after the render thread has started.
*/
public final void runOnGLThread(@NonNull Runnable action) {
public final void runOnRenderThread(@NonNull Runnable action) {
if (mView != null) {
mView.queueEvent(action);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
import android.content.Intent;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.view.Surface;
import android.view.View;
import java.lang.reflect.Method;
import java.util.ArrayList;
Expand Down Expand Up @@ -84,8 +85,10 @@ protected Godot getGodot() {

/**
* Register the plugin with Godot native code.
*
* This method is invoked on the render thread.
*/
public final void onGLRegisterPluginWithGodotNative() {
public final void onRegisterPluginWithGodotNative() {
nativeRegisterSingleton(getPluginName());

Class clazz = getClass();
Expand Down Expand Up @@ -169,9 +172,9 @@ public void onMainDestroy() {}
public boolean onMainBackPressed() { return false; }

/**
* Invoked on the GL thread when the Godot main loop has started.
* Invoked on the render thread when the Godot main loop has started.
*/
public void onGLGodotMainLoopStarted() {}
public void onGodotMainLoopStarted() {}

/**
* Invoked once per frame on the GL thread after the frame is drawn.
Expand All @@ -189,6 +192,22 @@ public void onGLSurfaceChanged(GL10 gl, int width, int height) {}
*/
public void onGLSurfaceCreated(GL10 gl, EGLConfig config) {}

/**
* Invoked once per frame on the Vulkan thread after the frame is drawn.
*/
public void onVkDrawFrame() {}

/**
* Called on the Vulkan thread after the surface is created and whenever the surface size
* changes.
*/
public void onVkSurfaceChanged(Surface surface, int width, int height) {}

/**
* Called on the Vulkan thread when the surface is created or recreated.
*/
public void onVkSurfaceCreated(Surface surface) {}

/**
* Returns the name of the plugin.
* <p>
Expand Down Expand Up @@ -225,12 +244,12 @@ protected void runOnUiThread(Runnable action) {
}

/**
* Queue the specified action to be run on the GL thread.
* Queue the specified action to be run on the render thread.
*
* @param action the action to run on the GL thread
* @param action the action to run on the render thread
*/
protected void runOnGLThread(Runnable action) {
godot.runOnGLThread(action);
protected void runOnRenderThread(Runnable action) {
godot.runOnRenderThread(action);
}

/**
Expand Down
2 changes: 1 addition & 1 deletion platform/android/java_godot_lib_jni.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ JNIEXPORT void JNICALL Java_org_godotengine_godot_GodotLib_step(JNIEnv *env, jcl
}

os_android->main_loop_begin();
godot_java->on_gl_godot_main_loop_started(env);
godot_java->on_godot_main_loop_started(env);
++step;
}

Expand Down
8 changes: 4 additions & 4 deletions platform/android/java_godot_wrapper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ GodotJavaWrapper::GodotJavaWrapper(JNIEnv *p_env, jobject p_godot_instance) {
_is_activity_resumed = p_env->GetMethodID(cls, "isActivityResumed", "()Z");
_vibrate = p_env->GetMethodID(cls, "vibrate", "(I)V");
_get_input_fallback_mapping = p_env->GetMethodID(cls, "getInputFallbackMapping", "()Ljava/lang/String;");
_on_gl_godot_main_loop_started = p_env->GetMethodID(cls, "onGLGodotMainLoopStarted", "()V");
_on_godot_main_loop_started = p_env->GetMethodID(cls, "onGodotMainLoopStarted", "()V");
}

GodotJavaWrapper::~GodotJavaWrapper() {
Expand Down Expand Up @@ -108,13 +108,13 @@ void GodotJavaWrapper::on_video_init(JNIEnv *p_env) {
p_env->CallVoidMethod(godot_instance, _on_video_init);
}

void GodotJavaWrapper::on_gl_godot_main_loop_started(JNIEnv *p_env) {
if (_on_gl_godot_main_loop_started) {
void GodotJavaWrapper::on_godot_main_loop_started(JNIEnv *p_env) {
if (_on_godot_main_loop_started) {
if (p_env == NULL) {
p_env = ThreadAndroid::get_env();
}
}
p_env->CallVoidMethod(godot_instance, _on_gl_godot_main_loop_started);
p_env->CallVoidMethod(godot_instance, _on_godot_main_loop_started);
}

void GodotJavaWrapper::restart(JNIEnv *p_env) {
Expand Down
4 changes: 2 additions & 2 deletions platform/android/java_godot_wrapper.h
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ class GodotJavaWrapper {
jmethodID _is_activity_resumed = 0;
jmethodID _vibrate = 0;
jmethodID _get_input_fallback_mapping = 0;
jmethodID _on_gl_godot_main_loop_started = 0;
jmethodID _on_godot_main_loop_started = 0;

public:
GodotJavaWrapper(JNIEnv *p_env, jobject p_godot_instance);
Expand All @@ -73,7 +73,7 @@ class GodotJavaWrapper {
jobject get_class_loader();

void on_video_init(JNIEnv *p_env = NULL);
void on_gl_godot_main_loop_started(JNIEnv *p_env = NULL);
void on_godot_main_loop_started(JNIEnv *p_env = NULL);
void restart(JNIEnv *p_env = NULL);
void force_quit(JNIEnv *p_env = NULL);
void set_keep_screen_on(bool p_enabled);
Expand Down