When using a custom Vendor ID and Product ID on the virtual keyboard, there was an issue where fn + control + arrows (the window tiling shortcut in Sequoia) was not handled properly by macOS. Therefore, the Vendor ID and Product ID were changed to use the same values as Apple's keyboard.
When using Apple's Vendor ID and Product ID, the keyboard type is automatically selected based on the Product ID. Therefore, the mechanism that linked the country_code with the keyboard type on the virtual keyboard has been removed.
The implicit behavior of changing fn + arrows to home, end, page_up, and page_down has been removed. This is because fn + arrows sent from keyboards with Apple's Vendor ID and Product ID are properly handled by macOS without requiring any conversion.
The operation_type::set_keyboard_type has been removed.
The country_code support has been removed from configuration_json_helper.
Updated core_configuration/virtual_hid_keyboard:
Added keyboard_type_v2.
Removed country_code and strict_fn_arrows.
Updated manipulator_environment:
Removed system_preferences_properties and virtual_hid_keyboard_keyboard_type from manipulator_environment.
Changed coreconfiguration type from weak_ptr to shared_ptr.
TODO
Changes
keyboard_type_v2
.country_code
andstrict_fn_arrows
.system_preferences_properties
andvirtual_hid_keyboard_keyboard_type
from manipulator_environment.