input_inject_event(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸŽ€ input_inject_event(9) πŸŽ€

okay bestie, welcome to the Kernel API Manual entry for input_inject_event β€” yes the title is literally the function name, we're keeping it real πŸ’…


✨ NAME ✨

input_inject_event β€” send input event from input handler πŸ¦‹


🌸 SYNOPSIS 🌸

void input_inject_event (struct input_handle *handle , unsigned int type
, unsigned int code , int value );
no cap, that's the whole signature β€” void, so don't go looking for a return value, it's not coming 😭

πŸ’– ARGUMENTS πŸ’–

  • handle β€” the input handle you're sending the event through, like your little delivery girl πŸŽ€
  • type β€” type of the event, the category bestie, the vibe check of the event
  • code β€” event code, the specific one, iykyk
  • value β€” value of the event, the actual deets πŸ’…

πŸ‘‘ DESCRIPTION πŸ‘‘

okay so here's the tea β˜• β€” input_inject_event is similar to input_event, bestie. like, they're sisters, same energy, but there's one iconic difference:

it will ignore the event if the device is "grabbed" and the handle injecting the event is not the one that owns the device. periodt πŸ’€

so like, if somebody else grabbed the device and you're not them? your event is literally not making it through. not yours. none for you. <em>the audacity, I know</em> πŸ™ˆ but that's the whole point β€” the grab owner gets the monopoly, no jumping the queue 🧚


πŸ”₯ SEE ALSO πŸ”₯

the whole friend group, fr fr β€” Kernel file ./drivers/input/input.c plus:


and that's the page, bestie πŸ’œ this whole thing lives in ./drivers/input and it's dated October 2026, still input_inject_event(9) to the very end β€” slay, ate, no crumbs 🌈✨🫢

πŸ“¦ where this page comes from