Программно отключить функцию «встряхнуть, чтобы найти указатель» MacOS, не скрывая курсор - PullRequest
1 голос
/ 25 мая 2019

Мне известен этот вопрос , но это отличается от того, что я ищу, поскольку принятый ответ скрывает курсор.

Я пишу программное обеспечение, которое отображает левую кнопку мыши на левую клавишу CTRL.

У меня это работает, с одной проблемой: когда я удерживаю клавишу CTRL и перетаскиваю указатель мыши, эта функция часто активируется, что портит мою операцию перетаскивания (похоже на попытку изменить направление движения по льду).

Поэтому инженеры Apple, должно быть, отключили эту функцию, когда левая кнопка мыши нажата, и включили ее снова, когда кнопка отпущена.

Примерно так - однако, когда я внедряю события, имитирующие мышь, эта функция не отключается.

Я понимаю, что должен быть какой-то программный способ сделать это, даже если это внутренняя функция Apple. Если Apple не использует решение в связанном ответе, т.е. NSCursor.hide(), а затем вручную рисует значок курсора в месте нахождения курсора.

Как я могу сделать это чисто?

РЕДАКТИРОВАТЬ: CGEventTap для NSEventTypeGesture или NSEventTypeMagnify не может ничего поймать.

...