orientation
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
project(ux_keyboard)
|
||||
|
||||
add_library(ux_keyboard SHARED keyboard_bridge.c)
|
||||
add_library(ux_keyboard SHARED keyboard_bridge.c sensor_bridge.c)
|
||||
target_link_libraries(ux_keyboard log)
|
||||
|
||||
# 16KB page size support (required for Android 15+)
|
||||
|
||||
18
android/src/main/jni/sensor_bridge.c
Normal file
18
android/src/main/jni/sensor_bridge.c
Normal file
@@ -0,0 +1,18 @@
|
||||
#include <jni.h>
|
||||
#include <stdint.h>
|
||||
|
||||
// Shared state — Kotlin writes, Dart reads via FFI.
|
||||
// Encoded as Surface rotation convention:
|
||||
// 0 = portraitUp, 1 = landscapeLeft, 2 = portraitDown, 3 = landscapeRight.
|
||||
static int32_t g_device_orientation = 0;
|
||||
|
||||
// --- Dart FFI reads ---
|
||||
|
||||
int32_t ux_device_orientation(void) { return g_device_orientation; }
|
||||
|
||||
// --- Kotlin JNI writes ---
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_io_swipelab_ux_SensorBridge_nSetDeviceOrientation(JNIEnv *env, jclass cls, jint v) {
|
||||
g_device_orientation = v;
|
||||
}
|
||||
Reference in New Issue
Block a user