fix(app): iPad hardware Enter submits the composer

Fixes #810
This commit is contained in:
Bolun Zhang
2026-05-13 17:52:39 +08:00
committed by GitHub
parent 72293f7f4f
commit 81697f85b2
9 changed files with 356 additions and 0 deletions
@@ -0,0 +1,29 @@
import { requireNativeModule, type EventSubscription } from "expo-modules-core";
type HardwareKeyboardSubmitHandler = () => void;
interface PaseoHardwareKeyboardModule {
setHardwareKeyboardSubmitEnabled(enabled: boolean): void;
addListener(
eventName: "onHardwareKeyboardSubmit",
handler: HardwareKeyboardSubmitHandler,
): EventSubscription;
}
const module = requireNativeModule<PaseoHardwareKeyboardModule>("PaseoHardwareKeyboard");
export function setHardwareKeyboardSubmitEnabled(enabled: boolean) {
module.setHardwareKeyboardSubmitEnabled(enabled);
}
export function addHardwareKeyboardSubmitListener(handler: HardwareKeyboardSubmitHandler) {
return module.addListener("onHardwareKeyboardSubmit", handler);
}
export function emitHardwareKeyboardSubmitForTest() {}
export function resetHardwareKeyboardSubmitForTest() {}
export function getHardwareKeyboardSubmitEnabledForTest() {
return false;
}