Keycode isn't detected on touchenabled devices

I haven’t noticed this problem until I had one of my testers that uses a laptop with touchscreen on it, but even though it has a keyboard, whether primarily or not(laptop with touchscreen and touchscreen with a keyboard connected) the shift key isn’t being detected.

script sample:

UserInputService.InputBegan:Connect(function(input, gameProcessed)
	if not gameProcessed then
		if UserInputService.KeyboardEnabled then
			if input.UserInputType == Enum.UserInputType.Keyboard then
				if input.KeyCode == Enum.KeyCode.LeftShift and not CrouchVal.Value then
					print("Shift Pressed")
					toggleSprint()
				elseif input.KeyCode == Enum.KeyCode.C then
					toggleCrouch()
				end
			end
		end

		if input.UserInputType == Enum.UserInputType.Gamepad1 or input.UserInputType == Enum.UserInputType.Gamepad2 then
			if input.KeyCode == Enum.KeyCode.ButtonL3 and not CrouchVal.Value then
				toggleSprint()
			end
		end
	end
end)

UserInputService.InputChanged:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.Keyboard then
		if input.KeyCode == Enum.KeyCode.LeftShift and not CrouchVal.Value then
			print("Shift Detected via InputChanged")
			toggleSprint()
		end
	end
end)

I’ve debugged this a few times in a few ways, to which none of them responded when attempted on the touchscreen devices.
It does respond on regular pc’s

Whats your touchscreen laptop name and specs?

1 Like

I haven’t gone that deep with this issue, I highly doubt you would have to, and it’s the same issue when any keyboard is connected to any device with touch enabled such as mobile devices