import org.jnativehook.mouse.*; // f: voidfunc(NativeMouseEvent) static AutoCloseable onGlobalMouseRelease(fO f) { jnativehook_init(); final NativeMouseInputAdapter listener = new { public void nativeMouseReleased(NativeMouseEvent e) { pcallF(f, e); } }; GlobalScreen.addNativeMouseListener(listener); ret autoCloseable { GlobalScreen.removeNativeMouseListener(listener); }; }