Platform-supplied facts about the key that core/view cannot derive from a KeyEvent alone. More...
#include <plugin_key_routing.hpp>
Public Attributes | |
| KeyEvent | key |
| bool | is_function_key = false |
| The key carries no printable character (a function key, or AppKit's 0xF700-0xF8FF private-use range). | |
| bool | offer_global_hook = false |
| Whether this call may offer the key to root.on_global_key. | |
Platform-supplied facts about the key that core/view cannot derive from a KeyEvent alone.
| bool pulp::view::PluginKeyOffer::is_function_key = false |
The key carries no printable character (a function key, or AppKit's 0xF700-0xF8FF private-use range).
Such a key is never text, so a focused text field that declines it has genuinely not consumed it.
| KeyEvent pulp::view::PluginKeyOffer::key |
| bool pulp::view::PluginKeyOffer::offer_global_hook = false |
Whether this call may offer the key to root.on_global_key.
Off by default, because a seam that delivers one press TWICE would otherwise fire the hook — and the script keydown listener behind it — twice. macOS is exactly that seam: AppKit offers every key-down to -performKeyEquivalent: before -keyDown:, and that override owns the hook there. A seam with a single delivery point (VST3 onKeyDown) sets this, and is then the only place the hook is consulted for that press.