I'm having trouble summoning my floating menus!

I finally sat down to figure out the floating menus. So awesome. Now I'm done and ready to set some conditions for its appearance. But I'm having a real tough time figuring out how. I think what's confusing me most are the two sections "visibility (show/hide menu)" and "modifier based visibility." I must be missing something because no matter what combination of toggles I use, I'm not seeing any change. Same with the available triggers.

Anyhoo, here's the two things I'm looking to do:

  • Summon a floating menu via shortcut. Any shortcut, really. I just want to see how it's done so that I can try some things.
  • And then the bigger thing. What I've done is make a floating menu for each app I use, filling them with shortcuts that I have trouble remembering. Just text. Like a cheatsheet for shortcuts. What I'd love to do is set the condition that if a specific app is in focus, a specific menu pops up. When a different app gains focus, it switches to the floating menu tied to that app. And I would like it to still retain the ability to hide or show it.

If anyone can point me in the right direction on these, I'd be very grateful!

So in general you would just use the predefined action "Toggle Floating Menu Hidden/Shown":

For app specific menus there are multiple options. You can either have one menu which changes its content based on the active application, or you can have multiple menus that are completely separated.
I think for your use-case it would be preferable to have one menu that automatically changes its content. You can achieve that by defining a global menu and assigning an identifier to it:

This menu needs to contain at least one item - but you can set it to be invisible if you don't have any global shortcuts you want to show.

Now to change the content of that menu depending on the app, add menus with the same identifier to the specific apps:

Arg. I feel like your instructions are pretty clear, but I'm not getting consistent results and a number of crashes/freeze ups.

For example, summoning the menu via shortcut. I was able to get one menu (global-shortcuts-test) to hide/show with ⇧⌃⌥⌘G. But when I added a second menu (safari-shortcuts-test), with a second shortcut (⇧⌃⌥⌘S) neither would work. And then going back and forth between the two menus making sure that nothing was misspelled or set up wrong, the app would crash.

(Also btw, sometimes when switching between different areas in the configurations window, nothing changes. For example, sometimes when switching from "Keyboard Shortcuts" to "Custom Floating Menus & Desktop Widgets", the "Keyboard Shortcuts" information is still showing. A restart always fixes this.)

Anyhoo, one menu that automatically changes its content based on the focused app would be amazing and exactly what I'm looking for. But I couldn't get it to work. And now, somehow the floating menu is empty no matter what I do, even though all the menu items are still visible in the configuration screen. Just not on the floating menu itself. It's blank.

I've attached my presets in case it's something obvious and I'm just a bonehead. I really appreciate your help!

The One Preset.bttpreset (5.4 MB)

Aw man, now I can't get my non-test menu to show any menu items. So whatever I did, it must have been global? I made backups of the floating menu before any messing around, but still blank. Boo!

let me have a look! If nothing changes in the UI this can indicate some exception happening. I’ll check what’s going on

You are fantastic.

I will have more time later, but quick note:
You seem to have disabled the visibility for all items completely:

You can undo this by selecting them all (cmd+a), then making them visible again.

Oh, rad. I toggled the hovered/not hovered boxes and the menu items came back. I'll keep messing around with trying to get the app-specific conditions to work.

I've made some progress!

I have two menus set up right now, one for global shortcuts and one for Safari shortcuts. Here's what happens: The global shortcuts floating menu is open when any app that isn't Safari is in focus. But when Safari gets the focus, a new floating menu opens with the Safari shortcuts. (Global menu still on-screen.) And then it disappears when Safari is no longer the focus. (Global menu still on-screen.)

Now I just need to get it down to a single floating menu. Getting closer!

Do both menus have the same identifier? (BTT will only merge menus if the identifier is the exact same)

Ah, that was it. Now they stay in one floating menu, but the formatting has gone all screwy and the menu items are jumbled up. I'll keep playing with it.

Oh, I see a "display order" field that, when messed with, changes what order the merged content goes in. I'll iron out all this stuff and see how close I get to my preferred outcome.

When merging menus you might need to use the display order property:

By default it will order by what is defined in the UI, but that's not possible when merging multiple menus. Thus you should have different display orders for the items per app. E.g. set all your Safari items to display order -1, then they will show on top.

I got everything to work! Thank you so much!

1 Like

Would it be possible to NOT merge the menus? So that I can use two shortcuts: one that brings up the global menu and another that opens the "insert app name here" menu.

Oh wait, never mind. It's under border.

Sure just give them different identifiers. Only menus with the same identifier are merged!

Ah! Yes, of course, that makes sense. Separate menus, separate shortcuts.