7
submitted 1 month ago by [email protected] to c/[email protected]
package int poll_win_RawInput(ref InputEvent output) nothrow @nogc {
	MSG msg;
	BOOL bret = PeekMessageW(&msg, null, 0, 0, PM_REMOVE);
	if (bret) {
		////Some code that supposed to swallow WM_SYSKEY and the likes, but does not work as intended////
		DispatchMessageW(&msg);//In the aforementioned block
		////Function that optionally gets text input messages////
 		switch (msg.message & 0xFF_FF) {
////Regular user input handling via RawInput and some legacy stuff + XInput handling in separate function////

Since it's for games, the default Alt key behavior is undesirable for me. It makes my test application hang and make error noises since it doesn't have a menubar. I checked whether my window had a flag that enabled the menubar or not, but couldn't find it.

you are viewing a single comment's thread
view the rest of the comments
[-] [email protected] 3 points 1 month ago

Found the solution, I have to put the following lines into the part that handles/intercepts the events related to the window itself:

case WM_SYSCHAR, WM_SYSDEADCHAR, WM_SYSKEYUP, WM_SYSKEYDOWN:
	return 0;

Otherwise all event that goes through this window goes to DefWindowProcW(); even if interrupted.

[-] [email protected] 2 points 1 month ago

If you’d have any user input, this would break it. Even if you emulate it using key codes later, localisation will be hard

[-] [email protected] 1 points 1 month ago

I'll be letting though certain keypresses in the future, and will only be blocking the alt key from hanging my app and such. It also blocks the Alt+F4 key combination and co.

[-] [email protected] 2 points 1 month ago

The test of behaviour I tell is an input field, allowing to type letters of European languages like ü, ä, ą and so on. I’m quite disappointed when I can’t input something like „Łabądź” as a player name, but able to edit in memory or in save file.

Also I prefer to have Alt-F4 as an emergency exit

load more comments (1 replies)
load more comments (1 replies)
load more comments (1 replies)
this post was submitted on 23 May 2024
7 points (88.9% liked)

Game Development

2814 readers
4 users here now

Welcome to the game development community! This is a place to talk about and post anything related to the field of game development.

Community Wiki

founded 1 year ago
MODERATORS