BetterTouchTool removes itself from startup (Login Items)

Describe the bug
I use multiple user accounts on my single macbook to keep work/home separate.

I can add BetterTouchTool to one account's login items preference pane, but not to another user's pref pane! This drove me crazy because I assume it's always there but it never starts up when I log back in. Switching accounts or locking the screen (using keychain status icon) then logging back in always removes it from login items.

For a while I thought that some other application was foolishly caching the com.apple.loginitems.plist for my user. Using fs_usage I carefully tracked this but it is always sfltool/cprefsd that does it. I am guessing this happens through an API call you are doing but of course I do not know.

Here is how I proved it was BetterTouch tool doing this. Steps to repro:

Install BetterTouchTool on one user account
Add license
Start BetterTouchTool from other user on same computer
Add license (it is unaware the system is already licensed)
Note: License successfully added in both cases
With user 1 and user 2 logged in AND Better Touch Tool running AND BetterTouchTool added to login items, either:
-use fast login to switch back to user 1
-lock screen using keychain access tool
-close laptop lid, then log back in (make sure of course require password after sleep is set)
Note: You will see BetterTouchTool removed from the login items preference pane. If you watch the pref file using fs_usage | grep com.apple.loginitems.plist, you will see the standard apple daemons access then change the file

Next:

Make Sure BetterTouchTool is NOT running by quitting.
Add BetterTouchTool to login items using the pref pane
Lock screen using keychain tool or close laptop lid then wake it up
Login again

Note:
BetterTouchTool remains on loginitems list.

I suspect this is because it is not running and can not take action to remove itself ... no doubt by accident.

If you repeat these steps but leave BetterTouchTool running.... It deletes itself again from the login items.

I have tried this in various combinations with other applications that I suspected were causing the issue. However, this works with ONLY betterTouchTool listed in the login items. Also note: it does NOT happen unless BTT is already running.

This seems to indicate that BTT is doing the removal. This has plagued me for several months- not sure when it started happening but it's definitely weird to drag the window to the top of the screen to maximize it, then see the ridiculous Apple Spaces appear... and wonder... "Didn't I add BTT back to login items???"

Affected input device (e.g. MacBook Trackpad, Magic Mouse/Trackpad, Touch Bar, etc.):
Happens under any device but just using track pad.

Screenshots
If applicable, add screenshots to help explain your problem. (You can just paste or drag them here)

Device information:

  • Type of Mac:
  • macOS version: 10.12.6
  • BetterTouchTool version:2.660

Additional information (e.g. StackTraces, related issues, screenshots, workarounds, etc.):
None of the actual touches of the pref file are done directly by BTT- only by the apple daemons sp not much use showing those traces.

Note: Before bug reporting, please make sure you have the latest version of BetterTouchTool and that you have already tried to restart your system :-). If you encounter a crash, please attach a crash log from the macOS Console.app from the "User Diagnostic Reports" section.
No crashes happen. Only madness. %^}

hey, do you have checked the launch on startup option in the BetterTouchTool preferences on both user accounts?

Hi,
No I have not but that preference works when set, thank you! I can see why you would need to obey the preference if it is unchecked by actively removing. I guess I had my settings set correctly overall and did not suspect that it would disable the standard user action.

Since this setting is clicked in real time, I suppose you can only perform the action when the box gets unchecked. However, I'm sure that checking occasionally fixes ANOTHER issue lol! So I think we are all good. Thank you for the great support and the great application!

I wasted a few days of frustration regarding this issue... I thought it's macOS being macOS and somehow not saving the settings.

It would be great if the checkbox read the system preferences for the initial state, rather than overriding the system preferences.

I prefer setting up login items through the Terminal, rather than going into the GUI of each application, because I have a script that does it. So far BTT is the only one who didn't work.