1
votes

I am the developer of an app called 1Keyboard (http://www.eyalw.com/1keyboard).

my app used to capture global keystrokes and send them to iPhones/iPads/etc as if the computer was an HID bluetooth keyboard.

This worked on 10.8, and dais on 10.9. I understand it has to do with the new Accessibility menu in system preferences. Instead of having one checkbox ("enable assistive devices") in 10.8, now the user has to enable this for each app individually.

For some reason, my app doesn't show up in the accessibility requiring apps in the preference. http://d.pr/i/8IfP

What should I do to have it appear there, and restore the lost functionality?

2

2 Answers

2
votes

See the function "AXIsProcessTrustedWithOptions:". It can be made to cause a prompt to the user, which will then add the app to the list in question. Much easier for the user.

Boolean isTrusted = AXIsProcessTrustedWithOptions(CFDictionaryCreate(NULL, (const void*[]){ kAXTrustedCheckOptionPrompt }, (const void*[]){ kCFBooleanTrue }, 1, NULL, NULL));

That being said, I'm still having trouble trapping global keystroke events.

1
votes

There are no "add an app" button on the new Accessibility menu, however, you can simply "drag-and-drop" your application from the Application folder to the panel directly (http://tinypic.com/r/2qu2k3d/5).

I'm using your app and I can confirm that the functionality is now restored :-)

Hope it helps !

Note: In Yosemite, there are now the standard "+" and "-" buttons in the Privacy pane of Security and Privacy preferences.