Friday, September 8, 2023

xGestures 1.9.2

Golly gee whiz! There's a new version of xGestures, version 1.9.2! As always, you can download it here: https://briankendall.net/xGestures/download.htm

This update doesn't add any new features, but it fixes a bunch of important stuff, some of which had been bothering me for years. Why I waited this long to fix these bugs is a mystery to me. I know that people have a way of tolerating and getting used to little bugs and annoyances in apps that they love, and I think I was doing that with xGestures. But then a little while later I had this "lightbulb over the head" moment where I was like, wait a minute, this is my app, why don't I just fix the damn thing?

This version also seems to work just fine in macOS Sonoma, at least according to a friend who's been running the beta for a few months now.

Here are the fixes:

  • Fixed application Exposé in macOS Ventura
  • Perform Keystroke action can now type keystrokes involving the numpad or navigation keys (e.g. arrow keys, home, end, etc.)
  • Fixed bug where sometimes a gesture would get "stuck" down
  • xGestures no longer freezes indefinitely when interacting with apps that have unresponsive UI
  • Fixed rendering bugs when drawing a gesture path
  • Fixed gestures being misdetected due to small movements from certain mice with high refresh rates (e.g. the MX518)
  • Fixed erroneous rocker gesture that could occur after switching away from an app that has gestures disabled

The big one for me is the whole "gestures getting stuck" thing. That was quite annoying, and there was no real rhyme or reason to why it happened. That should be fixed now. The other big one is xGestures becoming unresponsive as it tries to interact with an application that's locked up. That shouldn't really happen any longer either (though xGestures might still lock up for a half second or so before its query to the aforementioned locked up app times out). Overall this seems to make it a lot more pleasant to use. Enjoy!

Wednesday, August 23, 2023

I made a game: Blah Blob!

I nearly forgot to post about this on this blog! But I recently made a game! In HyperCard, no less, which means it's in glorious monochrome. It's called Blah Blob!

It's a platforming game complete with scrolling levels, which is something of an absurdity to make in HyperCard. To those who are familiar with HyperCard then it should come as no surprise that this game requires a PowerMac G3 or better for it to play at full speed, which makes it something of a silly game to have made in HyperCard, because no classic Macintosh from the era when HyperCard still widely used can actually run it at any sensible speed. But this game wasn't about being sensible. It was about having fun making a game in HyperCard like the sort I used to make when I was a kid. And it was a ton of fun to make!

It has 20 levels of increasingly devious difficulty. Be warned, the game gets pretty difficult, though those who enjoyed games like Super Meat Boy or Celeste might find themselves right at home with it. Just note that you have to get the timing of bounces right. There's no jump button in this game, though you'd be forgiven at first for thinking that there is.

Here's a link to where you can download it: https://bribrikendall.itch.io/blah-blob

The modern macOS, Windows, and Linux builds all come prepackaged with an emulator so that you don't have to worry about the business of figuring out how to run it. Just download them and run them! But if you are the sort of person that would be able to run the stack on classic mac hardware, the standalone stack is available for download too!

And for those who follow this blog for xGestures news, I have a new version in the works that fixes a bunch of old and annoying bugs. I'll release it soon, as soon as I'm convinced it's in good shape!

Wednesday, November 16, 2022

xGestures lives on: version 1.9.1

I have just finished a new version of xGestures, available as always at the following link: https://briankendall.net/xGestures/download.htm

There aren't any new features in this build, though there are a number of important fixes. Several of you reported to me that xGestures was crashing every time your macOS Ventura systems woke up from sleeping. That should now be fixed. Technically, this is one of those "how did it ever not crash" bugs so this may fix crashes in earlier versions of macOS too.

I also added a little advanced settings button with a toggle that changes how xGestures filters out mouse events. This setting is specifically there to make xGestures work with SteerMouse.

There's a few other little fixes at well that I won't repeat here since it's in the change log.

edit on November 17: I forgot to notarize xGestures before I released it! 😖 But I've since fixed it and re-uploaded it. Hopefully that didn't give so many of you any issues.

Monday, February 21, 2022

Hark! A new version of xGestures, version 1.9.0

Not wanting it to languish for too long, and also wanting to deal with the many emails I've gotten from users asking about xGestures crashing regularly, I've gone ahead and made a new version.

As always, you can download it here: https://briankendall.net/xGestures/download.htm

As mentioned, there are a few crashes that this version fixes. It also automatically removes the quarantine flag from itself after installation, so hopefully the info in the previous blog post will no longer be necessary. And it's now a universal binary! Well, actually, xGestures is old enough that this is the second time it's become a universal binary. Last time it was PowerPC and Intel. This time it's Intel and Apple Silicon.

But... this version also adds a new feature! This is one that I should have added a long, long time ago. It's a simple check box in the "Options" tab that reads: Bring window to front when using keystroke or menu item actions

It's fairly straight forward: if you perform a gesture that's assigned an action for typing a keystroke or picking a menu item, xGestures will bring whichever window that'll receive the action to the front before executing it. The reason is simple: windows that aren't in the front can't receive keystrokes and apps that aren't frontmost can't have their menus picked.

This is mainly intended to be used with the "Window under the start of the gesture determines the application" feature. Before now, if you performed a gesture over a window that wasn't frontmost, any keystroke xGestures types would go to the wrong window, or even the wrong application! And if the gesture was meant to pick a menu item, it would just flat out fail.

So, if you have "Window under the start of the gesture determines the application" enabled, you totally want to also enable "Bring window to front when using keystroke or menu item actions". It doesn't get turned on by default because I staunchly believe that minor application updates should not cause their behavior to change, and this way no one gets caught off guard. But nonetheless you want that enabled.

Sunday, August 29, 2021

What the? A blog post! xGestures and macOS 11.5.2 (and Monterey)

Hello everybody!

I've been getting a lot of emails from people about how xGestures stops working after updating the macOS 11.5.2 (and also Monterey). It seems that Apple has once again changed something subtle about how the various security thingamajigs in the system operate, and the upshot here is that anyone who installed the xGestures pref pane in such a way that it still has the "quarantine" flag on it will find that the pref pane can no longer launch xGestures itself.

Without any further ado, here is the fix:

1. Open Terminal (or your favorite terminal app like iTerm2)

2. Execute the following commands (note that they should each be a single line even though the blog post may break it into two):

xattr -r -d com.apple.quarantine ~/Library/PreferencePanes/xGestures.prefPane
xattr -r -d com.apple.quarantine /Library/PreferencePanes/xGestures.prefPane 

(One of the two of those should do it, depending on whether you installed xGestures for all users or just the current user account.) 

3. Try relaunching xGestures

At some point I'll release a new version of xGestures that addresses this issue. I've also recently discovered and fixed a crash that was introduced in version 1.80, so I definitely owe you all a new version with that fix. I'll try to make it a proper universal app too so that it doesn't need to run in Rosetta on an Apple Silicon mac.

Even though I still don't have a lot of time to work on xGestures, I'll go ahead and reaffirm that I intend to keep it working going into the future so long as there is still no other mouse gesture app that works as well as it does. And even with it being as old and somewhat kludgy as it is, so far there isn't.

Friday, September 13, 2019

xGestures 1.80 is up

xGestures 1.80 is now out of beta and available for download here: https://www.briankendall.net/xGestures/download.htm

I wouldn't be surprised if there were still more bugs to fix, particularly in Catalina. But for the time being I think it's good to go. I'll try to keep fixing any more bugs I find!

Tuesday, August 27, 2019

New 64-bit beta build of xGestures

For the few of you still following this blog, I've been working on a new update to xGestures. It's 64-bit and intended to be Catalina compatible. I've also fixed a number of long-time bugs that have been festering for a while, like the "Uninstall" button not working, an application's list of gestures getting annoyingly mixed up and out of order, and there not being separate actions for zooming a window and making it full screen. I've fixed a number of crashes too, though I suspect there's still plenty more lurking around in there somewhere.

This build is most of the way done, but I haven't tested it extensively in Catalina yet. Please shoot me an email if you try it out and encounter a bug!

Here's a link (version 1.80b3):
https://nextcloud.briankendall.net/index.php/s/WYGSs8iyqso2zHD