GoldenChaos-BTT: The complete Touch Bar UI replacement

New release incorporating @arthur's fixes! Thanks for submitting them to me :slight_smile:

Download: goldenchaos-btt.bttpresetcompressed (2.3 MB)

Made with BTT alpha 2.525.


New version (2.525-2):

  • Added VLC now playing support; comes first in the media player hierarchy and displays even if other media players are running (thanks @arthur for the script!)
  • Fixed button colors
  • Re-enabled weather widget with new cron scheduling to use less API calls

Download: goldenchaos-btt.bttpresetcompressed (2.4 MB)

GoldenChaos-BTT 2.525-2. Exported using BTT alpha 2.525.


New version! Changelog:

  • Reduced weather widget API calls even further
  • Fixed Calendar widget error (finally)

Download: goldenchaos-btt-2.526.bttpresetcompressed (2.4 MB)

GoldenChaos-BTT 2.526. Exported using BTT alpha 2.526.


New version while I remake the weather widget. Changelog:

  • Weather widget now uses 50% less API requests (updates every hour now, please don't change :stuck_out_tongue:)
  • Refactored the now playing widget hierarchy to be more reliable when multiple different players are running
  • Added now playing support for QuickTime (does not work with media controls yet)
  • Disabled VLC support by default as the VLC widget would continually launch VLC even if it was not running
  • Minor text fixes

Download: goldenchaos-btt-2.530.bttpresetcompressed (3.4 MB)

GoldenChaos-BTT 2.530. Exported with BetterTouchTool Alpha 2.530.

EDIT 2: Well that didn’t last long lol. EDIT: Wow! Thank you to the folks who switched to the new version. Weather widget API usage is at very manageable levels now and we shouldn't run out before @Andreas_Hegenberg has the chance to make the built-in one.

New version! Changelog for 2.530-2:

  • Unread Mail widget now only appears if Mail is already running instead of forcing mail open
  • Re-enabled VLC widget by default
  • Fixed try statements and added error handling

Weather widget seems to be doing very well today, we're under 100 calls :open_mouth: that's good news!

Download: goldenchaos-btt-2.530-2.bttpresetcompressed (3.4 MB)

GoldenChaos-BTT 2.530-2. Exported with BetterTouchTool Alpha 2.530.

This issue popped up recently. I just did some debugging and I got this error message:

iTunes got an error: application support folder doesn’t understand the “path to” message

However, I'm not really sure when iTunes decided it didn't support this. So, for now, I've commented out the album art portion of the script which is where this error originates. At least now it displays track info! As soon as the album art portion is fixed I'll upload another new version.

For now, updated version with the now playing fix is below. I also fixed a small error with the microphone mute button always displaying :slight_smile:

Download: goldenchaos-btt-2.531.bttpresetcompressed (3.4 MB)

GoldenChaos-BTT beta 2.531. Exported with BetterTouchTool alpha 2.531.

Ah, I missed that you had also said the error was occurring with Spotify. I've fixed that now. However, I can't reproduce the issue you're having with the iTunes script - it's working totally fine for me now, sans album artwork. EDIT: It's worth mentioning that I have configured the iTunes widget to hide by default if Spotify is running; that is the intended behavior so that only one actively playing element is shown at a time.


  • Fixed Spotify now playing widget (album art temporarily disabled)
  • Corrected Spotify now playing widget output to match iTunes now playing widget output

Download: goldenchaos-btt-2.531-2.bttpresetcompressed (3.4 MB)

GoldenChaos-BTT beta 2.531-2. Exported with BetterTouchTool alpha 2.531.

Heyyyy I think I've got everything fixed now! Hopefully this will be the last new version for the day, haha.

@wowthatisrandom I might in the future, but right now it's easier to maintain if I update the whole preset. I do wish this were easier to collaborate on, though.

2.531-3 Changelog:

  • Re-enabled iTunes and Spotify album artwork
  • Spotify widget will now display "Paused" when not playing music
  • iTunes widget will now display "Stopped" if music is stopped
  • Removed a bunch of useless try statements from a bunch of widgets

Download: goldenchaos-btt-2.531-3.bttpresetcompressed (3.4 MB)

GoldenChaos-BTT 2.531-3. Exported with BetterTouchTool alpha 2.531.

Oh boy oh boy! This one's a good one. It fixes two of my biggest issues with the preset so far. My ultimate goal is for this to be zero-config, and it just got a lot closer to that.

GoldenChaos-BTT 2.532 Changelog:

  • Reminders widget now uses iCalBuddy, no longer requires having Reminders open
  • Reminders widget will now display overdue items before it displays undated items
  • Calendar widget no longer requires configuration, will get events from all calendars by default

Download: goldenchaos-btt-2.532.bttpresetcompressed (3.4 MB)

GoldenChaos-BTT beta 2.532. Exported with BetterTouchTool alpha 2.532 on macOS Mojave beta (18A336e).

1 Like

Hey guys! So, I've decided I dislike uploading new versions to the forum, so from now on I am going to upload each new version to the official sharing site. This means that there will be a new URL for each version of the preset, which I'm okay with at this point. @Andreas_Hegenberg is very active and I think as long as this preset stays popular new versions will get verified fast enough :slightly_smiling_face:

To start it off, I've uploaded GoldenChaos-BTT 2.536. It has no changes other than being on the sharing site, so if you already installed v2.532 you don't need to "update" to 2.536. I've also updated the link in the first post. Until it's verified it'll be listed as the "beta" version.


  • GoldenChaos-BTT betas now hosted on the official share site

Download GoldenChaos-BTT 2.536:

Thank you for this fix! I had no idea they could auto-set units. Here's an updated version of the preset containing this fix.


  • Weather widget now auto-sets units based on location

Download GoldenChaos-BTT 2.536-2:


I did a thing guys

GoldenChaos 2.536-3 changelog:

  • Made the weather widget not shit itself when there's no connection or we run out of API calls (just display the default weather icon instead)

Download GoldenChaos-BTT 2.536-3:

Awesome! The mail widget always displaying was actually an error on my part, and I've added your Spotify album art fix as well.

Just for the curious: keeping all widgets and buttons on-screen regardless of which app is frontmost has been an intentional design choice so far. In this sense, you can customize your current keyboard by running or quitting various apps, which ultimately means you can rely on the keys staying where they are once they appear and can form muscle memory for the key positions. Additionally, Back and Forward can be used with Finder and System Preferences and a host of other apps, which is why they are considered Finder controls by default and never hidden (I'm debating adding New Tab to this group as well considering it's really now a system-wide thing).

GoldenChaos-BTT 2.536-4 changelog:

  • Unread mail widget no longer persistently displays when there is no unread mail
  • Spotify widget now downloads album artwork only on song change instead of every second

Download: GoldenChaos-BTT 2.536-4

New version! Now that things are pretty stable and I've gotten to see a bit of what the community is contributing, I've made some functionality improvements :slight_smile:

GC-BTT v2.536-5 changelog:

  • New Tab and AirDrop buttons added to default button set (congratulations, New Tab button! They grow up so fast :sob:)
  • Application switcher button now hidden by default
  • Application switcher can now be summoned by holding command (thanks for the idea, @thisisstark!)
  • New Dark Mode toggle button in the option menu
  • New True Tone toggle button in the option menu (non-functional)

Let me know what you guys think of the new default button set.

Download: GoldenChaos-BTT 2.536-5

New release is ready! Another big one.

v2.543 changelog:

  • New: Long press on iTunes Now Playing to enter expanded music view with:
    • Love/Dislike buttons
    • Shuffle/Repeat buttons
    • Full title and artist information
    • WiP buttons for Add to Library, Show Album in Library, Copy Apple Music Link, Show Artist in Library/Apple Music (not working, disabled by default)
  • New: Hold down control for expanded window snapping options
  • New: Refresh button only appears if you're using an app that can refresh
  • New: Long press New Tab while in a browser to open a new private window
  • New: Wi-Fi toggle button (Next to emoji button, disabled bu default)
  • True Tone button works now (on supported systems only)
  • Remade pretty much every icon using official Apple asset files
  • Related groups of buttons now look more related to each other
  • WiP buttons for Connect to AirPods and Bluetooth Toggle (not working, disabled by default)


Hold control for expanded window snapping options!

Refresh button appears contextually! More refined icons for lots of buttons like New Tab!

Long press on the music widget to get expanded controls! (iTunes only) (yes I forgot to fix the media buttons here oopsie)

Download: GoldenChaos-BTT 2.543


New experimental release! I still haven't gotten the chance to debug Spotify/Chrome issues, that'll be in the next update.

GoldenChaos-BTT 2.550 changelog:

  • New expanded widgets for reminders, calendar, and weather (long press on each to view)
  • Date/Time widget long press also opens expanded calendar widget
  • Expanded calendar widget shows next 9 calendar events
  • Expanded reminders widget shows next 9 reminders w/ highlighting for overdue items
  • Expanded weather widget shows today's weather + 7-day forecast
  • All weather widgets changed to the native BTT weather widget
  • Now Playing widget hierarchy makes a lot more sense now and doesn't use if statements
  • VLC widget now enabled by default (will still cause VLC to launch on BTT restart, though)

Download: GoldenChaos-BTT 2.550


Aw yeah, this is happenin'! 2.551 fixed so many issues caused by the duplicate UUID thing, and thank you so much for adding caching.

I've updated GC-BTT with the new auto-unit weather widget setting, here you go guys! :slightly_smiling_face:

Download: GoldenChaos-BTT 2.551


Just wait till I learn more UI scripting... :wink: then I can add support for loads more apps!

Also - new version!

GoldenChaos-BTT 2.551-2 changelog:

  • Added iTunes UI scripting (:stuck_out_tongue_winking_eye:)
    • Tap the iTunes widget to go to the currently playing song in iTunes
    • Copy Apple Music Link to the currently playing song (expanded music widget only)
    • Add to Library/Download from iCloud Music Library conditional button (expanded music widget only)
  • Fixed expanded weather widget not being set to auto units
  • Fixed spacing between a bunch of things
  • Refresh and New Tab buttons now combine more nicely

Caveat: The copy link/add to library functions are slow because for some reason the UI scripting part of AppleScript likes to wait a really long time before simulating arrow key presses. If anyone knows a fix, would love to hear it.

EDIT: of course 2.552 comes out just in time to reset all the weather widget settings anyway lmao. LOVING the customization! @Andreas_Hegenberg could there be options for temperature high and full day name? Also, custom weather icons don't seem to save.

Download: GoldenChaos-BTT 2.551-2

New version!

GoldenChaos-BTT 2.553 changelog:

  • Unread Mail support for Astro email client
  • Weather widgets now use official Apple weather icons
  • Updated formatting of weather widgets to account for new customization options
  • Expanded weather widget UI overhaul (still needs better corner radii though)

Here's what the expanded weather widget looks like right now:

Download: GoldenChaos-BTT 2.553

@liamb I'm going through various popular mail clients now that I know how to do generic UI scripting and adding support slowly. I'll make sure to get Outlook :slightly_smiling_face: @Harrumph is it really that easy?!

Also, I think I've fixed the calendar widget issues; the command the output widgets were running contained an option that limited the output to a single item, which is why only the first one was showing up. I've uploaded a new experimental version, please give it a shot :slightly_smiling_face: lots of other fixes, too!

GoldenChaos-BTT 2.553-2 changelog:

  • Fixed issue where expanded calendar widget would only display one event
  • Added very early Browser Tabs widget, doesn't do much yet
  • Brightness controls now also raise/lower brightness of external displays at the same time (let me know what you think of this behavior; extends to external keyboards as well)
  • Fixed spacing/padding of everything across the entire preset, much better now
  • Reorganized button groups to make them easier to manage/add in the future
  • Changed a few buttons into scripts in preparation for making them conditional (eg True Tone)

Look how nice the padding is now! No more overflow.

Download: GoldenChaos-BTT 2.553-2

1 Like