disable pressed key bindings when setting input handler

This commit is contained in:
Bixilon 2022-01-25 22:41:00 +01:00
parent 03de2b4f95
commit 1f66b80334
No known key found for this signature in database
GPG Key ID: 5CAD791931B09AC4
2 changed files with 20 additions and 2 deletions

View File

@ -48,7 +48,11 @@ interface IntegratedFramebuffer : Drawable {
override fun draw() {
renderWindow.renderSystem.framebuffer = null
renderWindow.renderSystem.reset(blending = true, sourceRGB = BlendingFunctions.SOURCE_ALPHA, destinationRGB = BlendingFunctions.ONE_MINUS_SOURCE_ALPHA)
renderWindow.renderSystem.reset(
blending = true,
sourceRGB = BlendingFunctions.SOURCE_ALPHA,
destinationRGB = BlendingFunctions.ONE_MINUS_SOURCE_ALPHA,
)
framebuffer.bindTexture()
shader.use()
mesh.draw()

View File

@ -55,7 +55,21 @@ class RenderWindowInputHandler(
var inputHandler: InputHandler? = null
set(value) {
field = value
// ToDo: Toggle key bindings (disable)
keysDown.clear()
val toRemove: MutableSet<ResourceLocation> = mutableSetOf()
for (name in keyBindingsDown) {
val pair = keyBindingCallbacks[name] ?: continue
if (pair.keyBinding.action[KeyAction.STICKY] != null) {
continue
}
for (callback in pair.callback) {
callback(false)
}
toRemove += name
}
keyBindingsDown -= toRemove
renderWindow.window.cursorMode = if (value == null) {
CursorModes.DISABLED
} else {