Joe Wreschnig [Mon, 27 Oct 2014 10:40:03 +0000 (11:40 +0100)]
Fix for dropping input events in OS X 10.10.
Value callbacks no longer include the device in the sender
(or at least, IOHIDQueueGetDevice now returns NULL). Instead, you need
to query the device directly from the IOHIDValueRef via its
IOHIDElementRef.
Joe Wreschnig [Mon, 27 Oct 2014 10:19:20 +0000 (11:19 +0100)]
Remove Sparkle, code signing failed me for the last time.
Joe Wreschnig [Mon, 27 Oct 2014 10:12:38 +0000 (11:12 +0100)]
Update project for OS X 10.10.
Joe Wreschnig [Thu, 4 Sep 2014 10:38:07 +0000 (12:38 +0200)]
New yukkurigames.com header.
Joe Wreschnig [Wed, 21 May 2014 00:37:37 +0000 (02:37 +0200)]
Remove useless link.
Joe Wreschnig [Wed, 21 May 2014 00:35:51 +0000 (02:35 +0200)]
Fix some invalid HTML.
Joe Wreschnig [Wed, 21 May 2014 00:29:01 +0000 (02:29 +0200)]
Optimize screenshot.
Joe Wreschnig [Wed, 21 May 2014 00:20:22 +0000 (02:20 +0200)]
New website prototype.
Joe Wreschnig [Tue, 18 Mar 2014 23:50:34 +0000 (00:50 +0100)]
Add binaries.
Joe Wreschnig [Tue, 18 Mar 2014 23:47:21 +0000 (00:47 +0100)]
Change README format and site links.
Joe Wreschnig [Tue, 12 Nov 2013 11:10:39 +0000 (12:10 +0100)]
Rename displayLink to _displayLink.
Joe Wreschnig [Sat, 17 Aug 2013 12:11:45 +0000 (14:11 +0200)]
Update manual and version numbers.
Joe Wreschnig [Sat, 17 Aug 2013 12:03:51 +0000 (14:03 +0200)]
Use renameMapping in the input controller rather than setting the name directly when setting an auto-discovered name. This triggers the appropriate callbacks to update some UI labels that were not being set when only the mappings list was marked change and not the currently active mapping.
Fix some formatting issues.
Joe Wreschnig [Sat, 17 Aug 2013 12:02:13 +0000 (14:02 +0200)]
Since this runs every time the foreground application changes, reduce the number of windows we have to process to those on-screen and excluding desktop ones.
Joe Wreschnig [Sat, 17 Aug 2013 11:51:13 +0000 (13:51 +0200)]
Add a blacklist of executable names (for wine.bin). Prefer the front window title to the executable name. This allows per-Wine-application bindings.
Joe Wreschnig [Wed, 14 Aug 2013 19:27:49 +0000 (21:27 +0200)]
Switch from NSTimer to a CVDisplayLink to handle continuous events. NSTimer was never great and scheduler coalescing in 10.9 will make it even less suitable for real-time use.
Joe Wreschnig [Wed, 14 Aug 2013 19:26:18 +0000 (21:26 +0200)]
Disable automatic termination when simulation is active. This is probably a good idea anyway, but will also stop Enjoyable from being backgrounded by App Nap in 10.9.
Joe Wreschnig [Mon, 1 Apr 2013 15:28:50 +0000 (17:28 +0200)]
Fix typo.
Joe Wreschnig [Mon, 1 Apr 2013 15:27:30 +0000 (17:27 +0200)]
Fix permissions.
Joe Wreschnig [Mon, 1 Apr 2013 15:26:44 +0000 (17:26 +0200)]
Update site for 1.1.
Joe Wreschnig [Mon, 1 Apr 2013 15:16:18 +0000 (17:16 +0200)]
Final 1.1 build version.
Joe Wreschnig [Mon, 1 Apr 2013 11:39:04 +0000 (13:39 +0200)]
More better names.
Joe Wreschnig [Thu, 21 Mar 2013 15:53:30 +0000 (16:53 +0100)]
Remove login item prompts, going back on this idea.
Joe Wreschnig [Thu, 21 Mar 2013 12:15:21 +0000 (13:15 +0100)]
Tweak some names in HIDManager.
Joe Wreschnig [Wed, 20 Mar 2013 21:35:10 +0000 (22:35 +0100)]
Stack errors.
Joe Wreschnig [Wed, 20 Mar 2013 20:55:49 +0000 (21:55 +0100)]
No more visible ivars.
Joe Wreschnig [Wed, 20 Mar 2013 20:39:13 +0000 (21:39 +0100)]
Output view controller now has a delegate rather than a direct reference to the input controller.
Joe Wreschnig [Wed, 20 Mar 2013 20:01:34 +0000 (21:01 +0100)]
Correct some names. NJOutputController should be NJOutputViewController as it doesn't actually control the outputs. Xcode groups.
Joe Wreschnig [Wed, 20 Mar 2013 19:51:30 +0000 (20:51 +0100)]
Merge device and mapping controllers into NJInputController.
Joe Wreschnig [Wed, 20 Mar 2013 19:40:45 +0000 (20:40 +0100)]
Rename methods uniquely between mapping/device controllers.
Joe Wreschnig [Wed, 20 Mar 2013 19:26:21 +0000 (20:26 +0100)]
Move simulation toggle out of device controller.
Joe Wreschnig [Wed, 20 Mar 2013 19:02:35 +0000 (20:02 +0100)]
App delegate now controls communication between device / mapping controllers and view controllers.
Joe Wreschnig [Mon, 18 Mar 2013 13:40:50 +0000 (14:40 +0100)]
Fix several cases where the UI did not properly reflect model changes.
Joe Wreschnig [Mon, 18 Mar 2013 00:51:12 +0000 (01:51 +0100)]
Disconnect some obsolete outlets.
Joe Wreschnig [Mon, 18 Mar 2013 00:41:19 +0000 (01:41 +0100)]
View-free NJMappingsController.
Joe Wreschnig [Mon, 18 Mar 2013 00:19:19 +0000 (01:19 +0100)]
Tweak some animations, clean up for preparation to move to app delegate.
Joe Wreschnig [Sun, 17 Mar 2013 21:30:02 +0000 (22:30 +0100)]
isBeingDebugged needs to always be NO in release builds as kinfo_proc offers no ABI guarantee.
Joe Wreschnig [Sun, 17 Mar 2013 21:25:42 +0000 (22:25 +0100)]
Use identity rather than equality when looking for equivalent mappings.
Joe Wreschnig [Sun, 17 Mar 2013 21:18:46 +0000 (22:18 +0100)]
Change two-pass behavior for loading mappings. Allow lazy binding of mappings by name.
Don't sleep the HID when debugging, as it's just a pain.
Joe Wreschnig [Sun, 17 Mar 2013 17:31:52 +0000 (18:31 +0100)]
Fix an off-by-one error. Make the popover work correctly when conflicts occur.
Joe Wreschnig [Sun, 17 Mar 2013 17:06:08 +0000 (18:06 +0100)]
Split NJMappingController view handling off into NJMappingViewController. This is still buggy.
Joe Wreschnig [Sat, 16 Mar 2013 19:23:42 +0000 (20:23 +0100)]
Split view management out of NJDeviceController. Right now this probably just makes things worse, but once all the views are out, all the regular controllers can just be merged.
Joe Wreschnig [Fri, 15 Mar 2013 22:45:27 +0000 (23:45 +0100)]
Whether error was set or not, if there's no mapping, that's an error.
Joe Wreschnig [Fri, 15 Mar 2013 00:36:46 +0000 (01:36 +0100)]
Missed a translating -> simulating.
Joe Wreschnig [Fri, 15 Mar 2013 00:36:26 +0000 (01:36 +0100)]
Don't re-save mappings immediately upon load.
Joe Wreschnig [Thu, 14 Mar 2013 20:25:47 +0000 (21:25 +0100)]
Fix another bad property name.
Joe Wreschnig [Thu, 14 Mar 2013 20:10:22 +0000 (21:10 +0100)]
Don't let the app control itself, it only leads to accidents or mouse bugs. Don't auto-focus the key field when simulating either.
Joe Wreschnig [Thu, 14 Mar 2013 20:06:40 +0000 (21:06 +0100)]
Mappings list doesn't need to be public anymore.
Joe Wreschnig [Thu, 14 Mar 2013 19:05:05 +0000 (20:05 +0100)]
Some more renames.
Joe Wreschnig [Thu, 14 Mar 2013 13:02:06 +0000 (14:02 +0100)]
Write proper constructors for NJInput and subclasses. Rename base to parent to match children, d(evice internal)id to e(lement)id to avoid confusion with actual device IDs/UID.
Joe Wreschnig [Wed, 13 Mar 2013 20:10:54 +0000 (21:10 +0100)]
Second try at login items. If the user hides Enjoyable in the status bar, explain and ask what to do. Try to have least-annoying interactions with Sparkle updater's additional prompt.
Joe Wreschnig [Wed, 13 Mar 2013 18:06:45 +0000 (19:06 +0100)]
UI element applications don't restore correctly, this needs more work/testing.
Joe Wreschnig [Wed, 13 Mar 2013 17:34:41 +0000 (18:34 +0100)]
Support relaunching in the background as part of resume/launch items.
Joe Wreschnig [Wed, 13 Mar 2013 17:33:46 +0000 (18:33 +0100)]
Add mapping for 6180 the moon.
Joe Wreschnig [Wed, 13 Mar 2013 17:32:10 +0000 (18:32 +0100)]
Style issues. Remove dead code.
Joe Wreschnig [Wed, 13 Mar 2013 13:44:58 +0000 (14:44 +0100)]
Fix localization changing mapping logical names.
Joe Wreschnig [Wed, 13 Mar 2013 11:56:47 +0000 (12:56 +0100)]
Restore application if an error occurs.
Joe Wreschnig [Wed, 13 Mar 2013 11:34:10 +0000 (12:34 +0100)]
Fix duplicate entries when merges don't conflict.
Joe Wreschnig [Wed, 13 Mar 2013 11:23:11 +0000 (12:23 +0100)]
Split actual IOKit HID interfacing off from NJDeviceController.
Joe Wreschnig [Wed, 13 Mar 2013 09:44:55 +0000 (10:44 +0100)]
Show a special message when the HID was closed during deactivation.
Joe Wreschnig [Wed, 13 Mar 2013 09:44:08 +0000 (10:44 +0100)]
Storing releases in git is not tenable now that Sparkle bloats them to >2MB.
Joe Wreschnig [Wed, 13 Mar 2013 09:43:10 +0000 (10:43 +0100)]
Copyediting.
Joe Wreschnig [Tue, 12 Mar 2013 21:16:35 +0000 (22:16 +0100)]
Create new mappings from the menu.
Joe Wreschnig [Tue, 12 Mar 2013 16:32:07 +0000 (17:32 +0100)]
Remember expanded rows between activations / device insertion.
Joe Wreschnig [Tue, 12 Mar 2013 14:37:57 +0000 (15:37 +0100)]
More key codes. Explain (sort of) raw key codes in the manual.
Joe Wreschnig [Tue, 12 Mar 2013 13:38:17 +0000 (14:38 +0100)]
Allow Command+Click to enter a raw key code.
Joe Wreschnig [Tue, 12 Mar 2013 13:00:38 +0000 (14:00 +0100)]
NJKeyInputField descends from NSControl and has a text field, rather than being one.
Joe Wreschnig [Tue, 12 Mar 2013 12:55:38 +0000 (13:55 +0100)]
Use symbolic names for keys.
Joe Wreschnig [Tue, 12 Mar 2013 11:45:20 +0000 (12:45 +0100)]
Localization support. Change many names in NJKeyInputField to standard keyboard shortcut symbols.
Joe Wreschnig [Mon, 11 Mar 2013 16:55:14 +0000 (17:55 +0100)]
Disable HID manager entirely when the window is closed and translation is disabled.
Joe Wreschnig [Mon, 11 Mar 2013 16:54:36 +0000 (17:54 +0100)]
Disabling code signing only in Debug is not possible with Sparkle.
Joe Wreschnig [Mon, 11 Mar 2013 13:59:22 +0000 (14:59 +0100)]
Add Sparkle automatic updater.
Joe Wreschnig [Mon, 11 Mar 2013 13:50:00 +0000 (14:50 +0100)]
Add mapping for KRUNCH.
Joe Wreschnig [Mon, 11 Mar 2013 12:24:30 +0000 (13:24 +0100)]
Fix some coding style issues.
Joe Wreschnig [Mon, 11 Mar 2013 12:24:13 +0000 (13:24 +0100)]
Fix input name width.
Joe Wreschnig [Mon, 11 Mar 2013 12:23:27 +0000 (13:23 +0100)]
Still need to prevent duplicates for axes.
Joe Wreschnig [Mon, 11 Mar 2013 12:02:28 +0000 (13:02 +0100)]
Show import conflict alert as a sheet rather than a separate window.
Joe Wreschnig [Mon, 11 Mar 2013 11:28:48 +0000 (12:28 +0100)]
Missed userInfo keys.
Joe Wreschnig [Mon, 11 Mar 2013 11:17:26 +0000 (12:17 +0100)]
Remove event translation menu item, it's not managed here anymore. Change NJKeyInputTextField to use the usual delegate with additional protocol requirements, rather than a custom delegate.
Joe Wreschnig [Mon, 11 Mar 2013 10:39:08 +0000 (11:39 +0100)]
Symbols for mapping userInfo key names.
Joe Wreschnig [Mon, 11 Mar 2013 02:22:28 +0000 (03:22 +0100)]
Remove unused imports.
Joe Wreschnig [Mon, 11 Mar 2013 02:20:29 +0000 (03:20 +0100)]
Generalize and share mapping menu (main, status, dock) behavior.
Joe Wreschnig [Mon, 11 Mar 2013 01:01:08 +0000 (02:01 +0100)]
Push notifications out with more idiomatic semantics - controller as object, parameter as userInfo.
Joe Wreschnig [Sun, 10 Mar 2013 23:22:49 +0000 (00:22 +0100)]
Move more mapping internal management for load/save into NJMapping. Clear out complications in NJMappingController.
Joe Wreschnig [Sun, 10 Mar 2013 21:54:07 +0000 (22:54 +0100)]
Have device controller setup itself rather than relying on the application delegate to do it.
Joe Wreschnig [Sun, 10 Mar 2013 21:52:01 +0000 (22:52 +0100)]
Ignore and stop listening if the key event has either Command or Alt modifier bits set, so e.g. Cmd-W doesn't reset the key.
Joe Wreschnig [Sun, 10 Mar 2013 18:50:06 +0000 (19:50 +0100)]
Fix various bad names in input controller. Make devices appear as a group header.
Joe Wreschnig [Sun, 10 Mar 2013 10:54:36 +0000 (11:54 +0100)]
Improvements to mappings controller. Move array munging into a separate category. Remove dead code. Push mapping changes to the output controller through a notification rather than directly.
Joe Wreschnig [Sun, 10 Mar 2013 10:18:17 +0000 (11:18 +0100)]
Remove duplicate file entry.
Joe Wreschnig [Sat, 9 Mar 2013 20:09:22 +0000 (21:09 +0100)]
Update documentation for mouse events.
Joe Wreschnig [Sat, 9 Mar 2013 19:48:40 +0000 (20:48 +0100)]
Add support for horizontal directions to scrolling. Rework UI to make the relationship between scrolling type and speed more obvious.
Joe Wreschnig [Sat, 9 Mar 2013 19:46:24 +0000 (20:46 +0100)]
Ignore website for build also.
Joe Wreschnig [Sat, 9 Mar 2013 18:57:54 +0000 (19:57 +0100)]
Select mouse button by tag; expose buttons 4 and 5 in the UI.
Joe Wreschnig [Sat, 9 Mar 2013 18:57:03 +0000 (19:57 +0100)]
Click when active to deactivate.
Joe Wreschnig [Sat, 9 Mar 2013 14:07:47 +0000 (15:07 +0100)]
Fix paths that trigger build increments.
Joe Wreschnig [Sat, 9 Mar 2013 14:02:25 +0000 (15:02 +0100)]
Mouse improvements. Segment and snap the mouse move and scroll speed for easier matching, and tweak defaults. Add support for simulating the center mouse button.
Joe Wreschnig [Sat, 9 Mar 2013 12:41:27 +0000 (13:41 +0100)]
Also store the mouse location and don't double-click if it moved.
Joe Wreschnig [Sat, 9 Mar 2013 12:34:58 +0000 (13:34 +0100)]
Send single/double/triple click information with mouse events.
Joe Wreschnig [Sat, 9 Mar 2013 12:34:13 +0000 (13:34 +0100)]
Remove timer log, it's too chatty.
Joe Wreschnig [Fri, 8 Mar 2013 23:56:37 +0000 (00:56 +0100)]
Auto-incrementing build script, I may regret this when it's 10,000 next week.