dlangui/3rdparty/android/native_activity.d

66 lines
2.4 KiB
D

/* dstep -I/path/to/ndk-r9d/platforms/android-9/arch-x86/usr/include -I/path/to/ndk-r9d/toolchains/llvm-3.4/prebuilt/linux-x86/lib/clang/3.4/include /path/to/ndk-r9d/platforms/android-9/arch-x86/usr/include/android/native_activity.h -o native_activity.d*/
module android.native_activity;
import jni;
import android.rect;
import android.asset_manager, android.input, android.native_window;
version (Android):
extern (C):
@system:
nothrow:
@nogc:
enum
{
ANATIVEACTIVITY_SHOW_SOFT_INPUT_IMPLICIT = 1,
ANATIVEACTIVITY_SHOW_SOFT_INPUT_FORCED = 2
}
enum
{
ANATIVEACTIVITY_HIDE_SOFT_INPUT_IMPLICIT_ONLY = 1,
ANATIVEACTIVITY_HIDE_SOFT_INPUT_NOT_ALWAYS = 2
}
struct ANativeActivity
{
ANativeActivityCallbacks* callbacks;
JavaVM* vm;
JNIEnv* env;
jobject clazz;
const(char)* internalDataPath;
const(char)* externalDataPath;
int sdkVersion;
void* instance;
AAssetManager* assetManager;
}
struct ANativeActivityCallbacks
{
void function(ANativeActivity*) onStart;
void function(ANativeActivity*) onResume;
void* function(ANativeActivity*, size_t*) onSaveInstanceState;
void function(ANativeActivity*) onPause;
void function(ANativeActivity*) onStop;
void function(ANativeActivity*) onDestroy;
void function(ANativeActivity*, int) onWindowFocusChanged;
void function(ANativeActivity*, ANativeWindow*) onNativeWindowCreated;
void function(ANativeActivity*, ANativeWindow*) onNativeWindowResized;
void function(ANativeActivity*, ANativeWindow*) onNativeWindowRedrawNeeded;
void function(ANativeActivity*, ANativeWindow*) onNativeWindowDestroyed;
void function(ANativeActivity*, AInputQueue*) onInputQueueCreated;
void function(ANativeActivity*, AInputQueue*) onInputQueueDestroyed;
void function(ANativeActivity*, const(ARect)*) onContentRectChanged;
void function(ANativeActivity*) onConfigurationChanged;
void function(ANativeActivity*) onLowMemory;
}
void ANativeActivity_onCreate(ANativeActivity* activity, void* savedState, size_t savedStateSize);
void ANativeActivity_finish(ANativeActivity* activity);
void ANativeActivity_setWindowFormat(ANativeActivity* activity, int format);
void ANativeActivity_setWindowFlags(ANativeActivity* activity, uint addFlags, uint removeFlags);
void ANativeActivity_showSoftInput(ANativeActivity* activity, uint flags);
void ANativeActivity_hideSoftInput(ANativeActivity* activity, uint flags);