WebKit Features in Safari 16 Beta — Web Inspector Extensions, Container Queries, Web Push for macOS Ventura, Subgrid, Flexbox Inspector, Accessibility Improvements, Offset Path, Animatable Grids, Overscroll Behavior, Shared Worker, and much more.#WWDC22https://t.co/VFQ0enQlGG
There are ten sessions at this week’s #WWDC22 that are of most interest to web developers. Check out the list & watch the videos! They are all free, no login required. Just hit play… and learn about what we’ve been working on for you over the last year.https://t.co/fzopeVjm92
Name Required Description
type Required "basic" is specified
from Required The name of key code, consumer key code or pointing button which you want to change
to Optional Events which are sent when you press from key
to_if_alone Optional Events which are sent when you press from key alone
to_if_held_down Optional Events which are sent when you hold down from key
to_after_key_up Optional Events which are sent after you release from key
to_delayed_action Optional Events which are sent after 500 milliseconds at you press from key
conditions Optional Manipulator is applied only if condition is matched (e.g., the frontmost application)
parameters Optional Override parameters such as to_if_alone_timeout_milliseconds
description Optional A human-readable comment
frontmost_application_if, frontmost_application_unless
Change an event if/unless the frontmost application is the specified application.
{
"type": "frontmost_application_if",
"bundle_identifiers": [
bundle identifier regex,
bundle identifier regex,
...
],
"file_paths": [
file path regex,
file path regex,
...
]
}
Name Required Description
type Required "frontmost_application_if" or "frontmost_application_unless"
bundle_identifiers Optional Bundle identifier regexs such as ["^com\\.apple\\.Terminal$", "^com\\.googlecode\\.iterm2$"]
file_paths Optional File path regexs such as ["/Finder$"]
description Optional A human-readable comment
Multiple
from event definition
{
"from": {
"key_code": "The name of key_code",
"consumer_key_code": "The name of consumer_key_code",
"pointing_button": "The name of pointing_button",
"any": "key_code or consumer_key_code or pointing_button",
"modifiers": {
"mandatory": [
modifier,
modifier,
...
],
"optional": [
modifier,
modifier,
...
]
},
"simultaneous": [
{
"key_code, consumer_key_code, pointing_button or any"
},
{
"key_code, consumer_key_code, pointing_button or any"
},
...
],
"simultaneous_options": {
"detect_key_down_uninterruptedly": false,
"key_down_order": "A restriction of input events order",
"key_up_order": "A restriction of input events order",
"key_up_when": "When key_up events are posted",
"to_after_key_up": [
to event definition,
to event definition,
...
]
}
}
}
Name Required Description
key_code Optional Key code which you want to change
consumer_key_code Optional Consumer key code (media key code) which you want to change
pointing_button Optional Pointing button name which you want to change
any Optional "any": "key_code", "any": "consumer_key_code" or "any": "pointing_button"
modifiers Optional Specify mandatory and optional modifiers (e.g., “change control-h to delete”)
simultaneous Optional Specify multiple events which are pressed simultaneously
simultaneous_options Optional Options for simultaneous
Note
key_code, consumer_key_code, pointing_button and any are exclusive.
You have to specify one of them.
Caution
Be careful using "pointing_button": "button1" and "any": "pointing_button".
You may lose the left click button and system will be unusable.