BinaryAge

Can we help test Total Spaces 3 if we have Apple silicon?

I’m very interested in helping test Total Spaces 3, and just yesterday picked up a new MacBook Pro with the M1 Max.

Is it possible to help as an alpha tester?

Thanks!

1 Like

Yes.

I am making 100 licenses available, but with no promises that we will be able to devote much time to it. It remains alpha quality, and with no clear path to getting it to production quality at this time. However, it will work ok for many use cases I think.

Please use this link to download
https://downloads.binaryage.com/TotalSpaces3-0.8.114.dmg

It does not have the same features as TotalSpaces2, but setting up your grid, navigating, and using the overview grid all work I hope.
The overview grid supports expose mode, press space bar to see all your windows.
It does not require turning off SIP, or any system modifications, but you must grant a couple of permissions (screen recording and accessibility).
TotalSpaces3 does not work with desktop spans displays mode, “Displays have separate spaces” must be turned on in Mission Control preferences.

Some things don’t work right - for instance TotalSpaces3 doesn’t always predict correctly the direction of a space change, particularly when it involves Finder windows.

All bug reports or suggestions are welcome!

Please use the coupon code 7997B7C2 to obtain a free license (which you can keep once the product is released). This is not a licence code, it’s a coupon that you can use during the buy process.

Stephen

8 Likes

Thank you Stephen, where is the best place to report issues?

Thanks a lot ! I’ll send you bugs and suggestions of course.

Thanks Stephen, quite exciting! Same question: what’s the best place for us to send bug reports? Here on the forum, DM or email?

Here is fine for bug reports. If you have more data or personal details then send them to support@binaryage.com

I’ve already managed to get it into a state where it crashed and won’t start back up, hah!

If it’s relevant - I have my Logitech horizontal wheel mouse wheel switch spaces the standard “macOS” way, and then the side buttons on the mouse mapped to shift-opt-up/down for vertical switching.
So I was switching around between spaces essentially using a combination of both the standard macOS switching + Total Spaces shortcuts, and it crashed and won’t start back up.

Here’s the stacktrace upon startup.

error	10:20:54.901521-0400	TotalSpaces3	An uncaught exception was raised
error	10:20:54.901547-0400	TotalSpaces3	*** -[__NSPlaceholderArray initWithObjects:count:]: attempt to insert nil object from objects[0]
error	10:20:54.901580-0400	TotalSpaces3	(
	0   CoreFoundation                      0x00000001af73012c __exceptionPreprocess + 240
	1   libobjc.A.dylib                     0x00000001af481808 objc_exception_throw + 60
	2   CoreFoundation                      0x00000001af800464 -[__NSCFString characterAtIndex:].cold.1 + 0
	3   CoreFoundation                      0x00000001af7fdbb8 -[__NSPlaceholderArray initWithCapacity:].cold.1 + 0
	4   CoreFoundation                      0x00000001af630738 -[__NSPlaceholderArray initWithObjects:count:] + 252
	5   CoreFoundation                      0x00000001af68b4b0 +[NSArray arrayWithObjects:count:] + 48
	6   TotalSpaces3                        0x0000000100f54d34 TotalSpaces3 + 52532
	7   TotalSpaces3                        0x0000000100f6867c TotalSpaces3 + 132732
	8   TotalSpaces3                        0x0000000100f6935c TotalSpaces3 + 136028
	9   TotalSpaces3                        0x0000000100f73230 TotalSpaces3 + 176688
	10  TotalSpaces3                        0x0000000100f73148 TotalSpaces3 + 176456
	11  libdispatch.dylib                   0x00000001af426bac _dispatch_client_callout + 20
	12  libdispatch.dylib                   0x00000001af428454 _dispatch_once_callout + 32
	13  TotalSpaces3                        0x0000000100fa1010 TotalSpaces3 + 364560
	14  TotalSpaces3                        0x0000000100fa182c TotalSpaces3 + 366636
	15  CoreFoundation                      0x00000001af6a5160 __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 28
	16  CoreFoundation                      0x00000001af748ae4 ___CFXRegistrationPost_block_invoke + 52
	17  CoreFoundation                      0x00000001af748a50 _CFXRegistrationPost + 456
	18  CoreFoundation                      0x00000001af673e10 _CFXNotificationPost + 720
	19  Foundation                          0x00000001b052d5e0 -[NSNotificationCenter postNotificationName:object:userInfo:] + 96
	20  AppKit                              0x00000001b220c7fc -[NSApplication _postDidFinishNotification] + 340
	21  AppKit                              0x00000001b220c514 -[NSApplication _sendFinishLaunchingNotification] + 236
	22  AppKit                              0x00000001b2209f14 -[NSApplication(NSAppleEventHandling) _handleAEOpenEvent:] + 580
	23  AppKit                              0x00000001b2209afc -[NSApplication(NSAppleEventHandling) _handleCoreEvent:withReplyEvent:] + 780
	24  Foundation                          0x00000001b055a834 -[NSAppleEventManager dispatchRawAppleEvent:withRawReply:handlerRefCon:] + 344
	25  Foundation                          0x00000001b055a670 _NSAppleEventManagerGenericHandler + 96
	26  AE                                  0x00000001b5e3475c _AppleEventsCheckInAppWithBlock + 15484
	27  AE                                  0x00000001b5e340b4 _AppleEventsCheckInAppWithBlock + 13780
	28  AE                                  0x00000001b5e2cf84 aeProcessAppleEvent + 488
	29  HIToolbox                           0x00000001b8235dfc AEProcessAppleEvent + 68
	30  AppKit                              0x00000001b2203ed8 _DPSNextEvent + 1848
	31  AppKit                              0x00000001b2202390 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1332
	32  AppKit                              0x00000001b21f43b0 -[NSApplication run] + 596
	33  AppKit                              0x00000001b21c5a84 NSApplicationMain + 1064
	34  TotalSpaces3                        0x0000000100f6271c TotalSpaces3 + 108316
	35  dyld                                0x00000001012810f4 start + 520
)
default	10:20:54.901861-0400	TotalSpaces3	*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderArray initWithObjects:count:]: attempt to insert nil object from objects[0]'
*** First throw call stack:
(
	0   CoreFoundation                      0x00000001af73012c __exceptionPreprocess + 240
	1   libobjc.A.dylib                     0x00000001af481808 objc_exception_throw + 60
	2   CoreFoundation                      0x00000001af800464 -[__NSCFString characterAtIndex:].cold.1 + 0
	3   CoreFoundation                      0x00000001af7fdbb8 -[__NSPlaceholderArray initWithCapacity:].cold.1 + 0
	4   CoreFoundation                      0x00000001af630738 -[__NSPlaceholderArray initWithObjects:count:] + 252
	5   CoreFoundation                      0x00000001af68b4b0 +[NSArray arrayWithObjects:count:] + 48
	6   TotalSpaces3                        0x0000000100f54d34 TotalSpaces3 + 52532
	7   TotalSpaces3                        0x0000000100f6867c TotalSpaces3 + 132732
	8   TotalSpaces3                 <…>

Amazing! Thank you so much for sharing TotalSpaces3. Still more than happy to pay for it once it is officially release!

Absolutely awesome! Thank you Stephen!

First feedback. Initial install and setup worked flawlessly but have discovered a couple of issues since.

Setup:

  • M1 Max 14" MBP (64GB)
  • macOS Monterey 12.01
  • System Preferences → Mission Control → “Displays have separate spaces” turned on
  • System Preferences → Accessibility → Display → “Reduce motion” turned on
  • External display Samsung Ultra Wide @ 3440x1440 - 75Hz
  • MBP display set up with just 1 desktop
  • External display set up with 2 rows of 4 columns grid (8 desktops)
  • Circulation and Transitions both turned off

Bugs:

  • In Preferences → Layout, the “Select display” dropdown shows “Unknown” for both the MBP and external displays.
  • When moving between desktops (on the external display) using keyboard shortcuts, there is still a bit of a lag despite Transitions being turned off and Reduce motion turned on. The lag is long enough to see the desktop wallpaper preview before for a second before being replaced with the actual desktop. It also prevents you from moving quickly across rows or columns of desktops as it seems to wait for that preview image swap to finish.
  • After returning the MBP from sleep (where the external display has lost MBP signal), moving between desktops (on the external display) has a glitch where the desktop preview that is normally shown until the move is complete is spread across both displays. In my case that is the 3440x1440 external display desktop wallpaper preview shown starting from the bottom left corner of the MBP and the remainder across the bottom left of the external display (MBP sits to the left of the external display). Resolved by restarting TS3.

I hope this is useful info. Will report in anything else I come across.

OMG Thank you thank you thank you! I literally just ordered my M1 Mac today when I saw this, I was waiting till there was something before ordering cause I can’t really live without it.

I came from Solaris / Linux and my brain just operates with virtual desktops.

The order says it will be here the 10-12th of the month. Is there any way to reserve one of those 100 before they are all gone?

I have an active license for TS2!

My M1 MacBook Pro is due at the end of the month (my card has just been charged!) so I too hope that I can get in before the 100 licences are used up.
But I guess I will wait and see! Thanks so much for even attempting this, guys.

Removing every file I could find related to TotalSpaces3, reinstalling, and rebooting seems to have fixed this. I also managed to break Logi Options+ so it’s very likely that it was actually Logi Options+ conflicting.

That said - I have my mouse buttons only mapped to shift-opt-left/right now. I would love for the ability to have the ctrl modifier change left/right to up/down. Or just more fine-grained control over hotkeys so we can do whatever combos we want. :slight_smile:

Just know that you are awesome. Thank you for your efforts and response on this. Sorry you don’t see a way to get this to production quality - there are those of us that would probably love to help.

I’ve installed TS3 on my 16" 2021 MBP 32GB M1 Max and it’s working like a charm. As a user since v1, I had been holding out upgrading my laptop until there was an update to TS3 but hardware failures meant I just couldn’t wait any longer. To find this available a couple of days ago was serendipitous to say the least.

I have registered this copy, but absolutely look forward to purchasing a license as soon as that is an option. Thank you for all you do.

Will this work on Intel Macs? Certainly happy to help test if so, but I don’t want to waste one of your coupon codes if I won’t be able to be any help. (Thanks for the great software btw, it’s made me way more productive over the years. My brain is completely rewired to work with a 2D grid of Spaces.)

I’m going to guess it won’t given the original topic of this thread and the note on the blog post about the future of their software saying that TotalSpaces 3, “is intended for Apple Silicon macs only (at this time).” Having said that, you should be able to download the dmg linked above and install it for the free trial period without using the coupon code (which is used during checkout to obtain a new license for free).

@stephen, I am so very grateful. The mainfunctionality is working for me and I would be glad to buy a real licence. Is the licensing process already working?

So cool of you to do this @stephen. It’s working very well for me so far!

That’s reasonable. I think I’ve read every thread on the topic on the boards, and there definitely has been talk of it possibly working on intel at some point, but the info is pretty fragmented so I wasn’t sure what the latest plan was in that regard, and this post is the only one I’ve seen with the software files on it, so it seemed as good a place as any to ask. The app in the DMG on this post won’t even run on my machine, so I guess that answers my question.