I haven't explored much into conditional activation groups, but recently figured that I am manually duplicating a number of triggers/etc across different apps that I consider 'similar (eg. different chat apps), and it would probably make more sense to just create a 'group' that combines those apps into a single place that I define the triggers. From a quick skim the closest/best feature for that seems to be 'conditional activation groups'.
The default UI for this presents the 'Edit Conditions for Group' view, and shows options for 'Window Name' and 'App Name', as well as the 'Current Condition Values' section that updates with details to assist me filling things out:
This is useful, and I can absolutely go and manually find the details for all of the apps and add them in here.
But, given I have existing apps configured in BTT, I thought there might be a way I could just copy the same details that BTT was using to identify that app directly from my config, and then paste them into this activation group.
The first thing I thought to try was to right click on one of the existing apps configured in the left hand list of apps in BTT, and was hoping to find a menu option for copying the 'App Name' or 'App Bundle Identifier' or similar combination of details that BTT is using under-the-hood to detect that specific app; but unfortunately that isn't currently an option. It could even work to use the existing 'Copy Conditional Activation Group Conditions' option here, though it would obviously end up 'generating' the necessary conditions, rather than reading them from it's underlying group (which doesn't exist):
Another option that I thought might be useful on this right-click menu is a 'Convert to Conditional Activation Group' option (with an appropriate warning/confirmation alert stating that once converted, it probably can't be converted back). I would basically see this feature converting the standard app config into an equivalently configured conditional activation group, with the necessary conditions pre-filled, and all of the existing triggers/etc still present. The current workaround for this is just to create a new conditional activation group, copy all of the relevant triggers across to it, etc.
Then, continuing on from this idea, I thought it might be useful to have another right-click menu option that allows you to merge an existing app config into a conditional activation group, chosen from a list of currently existing ones (again, with an appropriate warning/confirmation alert stating that once converted, it probably can't be converted back). I would see this feature as adding the necessary conditions for that app to the existing conditional activation group, and then merging all of the triggers/etc into it as well.
Further from that last ability to 'merge existing apps into a conditional activation group' on a 1 by 1 basis; it would then be cool if we could select multiple currently configured apps in the left hand list, and either convert them all into a single 'conditional activation group', or add them all to an existing 'conditional activation group'.
So in the end, the right-click menu options would end up being something like:
With a single app selected, and no existing 'conditional activation groups':
- Copy Conditional Activation Group Conditions
- Convert to Conditional Activation Group
Merge with existing Conditional Activation Group
With a single app selected, and existing 'conditional activation groups':
- Copy Conditional Activation Group Conditions
- Convert to Conditional Activation Group
- Merge with existing Conditional Activation Group
- Existing Group 1
- Existing Group N
With multiple apps selected, and no existing 'conditional activation groups':
- Copy Conditional Activation Group Conditions
- Convert selected to Conditional Activation Group
Merge selected with existing Conditional Activation Group
With multiple apps selected, and existing 'conditional activation groups':
- Copy Conditional Activation Group Conditions
- Convert selected to Conditional Activation Group
- Merge selected with existing Conditional Activation Group
- Existing Group 1
- Existing Group N