I’d like to request an option for the Prompt for User Input window to appear near the mouse cursor, similar to the existing “Place palette under mouse” feature for palettes. This would make prompts easier and faster to use, especially when working away from the center of the screen.
This feature is already added through the Set Next Engine Window Position action. In its calculation fields you can use the MOUSEX() and MOUSEY() functions to specify the current mouse x- and y-coordinates for the position
Promp for user input under the mouse .kmmacros (v11.0.4, 16 KB)
Very nice solution. And just realised you can add in a + or - offset to get a certain part of the prompt exactly under the mouse (for example, the Enter button).
Thanks a lot, your solution worked perfectly and was really helpful!
That's really great. I just wish there was a way to save another click and automatically open a menu with a mouse click, so that a few keystrokes on the arrow keys would be enough to select an entry.
At least I haven’t found a way to make it work.
If you have the ‘Full keyboard Access’ setting enabled on your mac, the first menu will be highlighted and you can arrow through the options in a Prompt window.
What @Evan_Mangiamele proposes above, or have an Execute an AppleScript action, asynchronously call the following AppleScrip, right before the Prompt action:
delay 0.2
tell application "System Events"
tell process "Keyboard Maestro Engine"
set frontmost to true
set focused of pop up button 1 of window "Keyboard Maestro User Input" to true
end tell
key code 125
end tell
This also opens the menu, but if you were to want it only to set focus to the menu, you can simply delete the key code 125 line (that simulates a key press of the down arrow).
For more complex prompts, there will probably be more buttons, so you might have to change the button 1 to another number if the menu you're interested in is not the topmost.
ㅤ
Macro example:
Defaultly open drop-down menu of Prompt for User Input (with delay).kmmacros (v11.0.4, 17 KB)
Edit: Updated script with small delay
Thank you both so much @Evan_Mangiamele & @Alexander for your help.
I tried changing the system settings but these have other consequences that I’m not used to.
So I tried the Apple Script but this results in the following error:
“2026-01-25 19:16:55 Execute an AppleScript failed with script error: text-script:99:177: execution error: “System Events” received an error: “window 'Keyboard Maestro User Input' of process 'Keyboard Maestro Engine'” cannot be set to “true”. (-10006). Macro “1b | Test Macro” cancelled (while executing Execute AppleScript).” ![]()
I suspect it will work if you add a line with a small delay at the top of the script: delay 0.2
Full script with delay
delay 0.2
tell application "System Events"
tell process "Keyboard Maestro Engine"
set frontmost to true
set focused of pop up button 1 of window "Keyboard Maestro User Input" to true
end tell
key code 125
end tell
I tested the setup on my system and it worked, even with a 0.1s pause in-between the Execute an AppleScript action and the Prompt for User Input action. Therefore, I thought it safe to leave the delay out. But the delay makes sense, and I've also updated my post above with this.
Edit: Did you try, my example macro? If that runs without an error, but the script does not work with your prompt, you might have to experiment to find the correct numbered "button" (set to button 1 in my posted script) to set focus to



