Request for explainer on Display variables when configuing a floating menu visibility.

Can someone please explain In Focused Window and/or Fixed On Screen triggers? Specifically in the Position on Screen settings for a floating menu. [Position Retrieved From Dynamic Variable or Named Trigger (In Focused Window] | [Position Retrieved From Dynamic Variable or Named Trigger (Fixed On Screen)]. I’m new to variables not just in BTT but also Siri Shortcuts, and shortcut tools like Toolbox Pro.[1] I've figured out what 'global variables' do and I know why a persistent variable would be used, but that’s it. So go easy on me if you reply :slight_smile:

I have one menu I want to stay locked on my main work monitor and another I want to float around depending on the app I’m using. And I can move and resize it and it remembers the position if I use a keyboard shortcut to close it. The complex part is I use a work setup and a home setup and I’d like it to work on boat. But at work the main work window is an external monitor to my MacBook Pro, and the home setup uses a different laptop as the main work monitor and a second display is the secondary.


  1. A comment: I keep finding all these actions but I don't can't find tutorials online on what their use is and how to get them up and running, nothing on online documentation as it doesn't go too deep. Can someone suggest tutorial videos or websites that breaks down what some of these pro-Actions do? I can picture in my head @Andreas_Hegenberg creating interesting triggers for use-cases but where is the online documentation for them or some documentation of what they were created for? ↩︎

dynamic variables can be defined in the "Automations, Named & Other Triggers" section. They are basically java script functions that return a value and in this case they can return a position.

However starting with 4.539 alpha, there is an easier way to solve your usecase.
You can create a conditional activation group that checks for the active screen resolutions. Most likely they will differ across your setups, so you can use them to differentiate between your setups.

Now what is new in 4.539 is this option:

"Override GLobal Menu Settings If Menu Identifier Matches"
It allows you to modify the basic properties of a floating menu if the conditional activation group is active. Just make sure the menu identifier is the same as for the menu you have defined "For all apps".
This menu does not need to contain any items, it's just used to update the properties (if you add items, they will be added to your existing menu when the conditional activation group is active).

1 Like

Alright that looks great :partying_face: I'll give it a try. One thing I'm having trouble with on menus that merge with the same identifier is when I click on an app that shows a new item in the menu I get the expected result, but when I return focus back the menu item disappears and doesn't return to the state "for all apps". This is in reference to app-specific menus building on this post.

ah that might be a caching bug, I’ll have a look!

I just checked, but this is working fine here. If you still encounter this, could you share a preset where it occurs? (Or got to help => export diagnostic debug information and send the result to me via