diff --git a/extra/game-input/backend/backend.factor b/extra/game-input/backend/backend.factor index cfba0a52f5..df61179da7 100644 --- a/extra/game-input/backend/backend.factor +++ b/extra/game-input/backend/backend.factor @@ -2,12 +2,14 @@ USING: eval multiline system combinators ; IN: game-input.backend STRING: set-backend-for-macosx -USING: namespaces game-input.backend.iokit game-input ; +USING: namespaces parser game-input.backend.iokit ; +<< "game-input" (use+) >> iokit-game-input-backend game-input-backend set-global ; STRING: set-backend-for-windows -USING: namespaces game-input.backend.dinput game-input ; +USING: namespaces parser game-input.backend.dinput ; +<< "game-input" (use+) >> dinput-game-input-backend game-input-backend set-global ; diff --git a/extra/game-input/backend/dinput/dinput.factor b/extra/game-input/backend/dinput/dinput.factor index 73c9f511a1..116faf60cd 100755 --- a/extra/game-input/backend/dinput/dinput.factor +++ b/extra/game-input/backend/dinput/dinput.factor @@ -1,10 +1,11 @@ -USING: windows.dinput windows.dinput.constants game-input +USING: windows.dinput windows.dinput.constants parser symbols alien.c-types windows.ole32 namespaces assocs kernel arrays vectors windows.kernel32 windows.com windows.dinput shuffle windows.user32 windows.messages sequences combinators math.geometry.rect ui.windows accessors math windows alien alien.strings io.encodings.utf16 continuations byte-arrays locals game-input.backend.dinput.keys-array ; +<< "game-input" (use+) >> IN: game-input.backend.dinput SINGLETON: dinput-game-input-backend diff --git a/extra/game-input/backend/iokit/iokit.factor b/extra/game-input/backend/iokit/iokit.factor index dcdfa6d192..4a7d251425 100755 --- a/extra/game-input/backend/iokit/iokit.factor +++ b/extra/game-input/backend/iokit/iokit.factor @@ -1,9 +1,10 @@ USING: cocoa cocoa.plists core-foundation iokit iokit.hid kernel cocoa.enumeration destructors math.parser cocoa.application -sequences locals combinators.short-circuit game-input threads +sequences locals combinators.short-circuit threads symbols namespaces assocs vectors arrays combinators core-foundation.run-loop accessors sequences.private -alien.c-types math ; +alien.c-types math parser ; +<< "game-input" (use+) >> IN: game-input.backend.iokit SINGLETON: iokit-game-input-backend diff --git a/extra/game-input/game-input.factor b/extra/game-input/game-input.factor index 208c8476fc..18ec04df1f 100755 --- a/extra/game-input/game-input.factor +++ b/extra/game-input/game-input.factor @@ -28,7 +28,6 @@ M: f (reset-game-input) ; PRIVATE> : open-game-input ( -- ) - load-game-input-backend game-input-opened? [ (open-game-input) game-input-opened on @@ -76,3 +75,6 @@ M: keyboard-state clone call-next-method dup keys>> clone >>keys ; HOOK: read-keyboard game-input-backend ( -- keyboard-state ) + +load-game-input-backend +