bitfocus / companion

Bitfocus Companion enables the reasonably priced Elgato Stream Deck and other controllers to be a professional shotbox surface for an increasing amount of different presentation switchers, video playback software and broadcast equipment.
http://bitfocus.io/companion
Other
1.59k stars 503 forks source link

Add option to merge presets #2951

Open istnv opened 3 months ago

istnv commented 3 months ago

Is this a feature relevant to companion itself, and not a module?

Is there an existing issue for this?

Describe the feature

The ability to append or merge actions from another preset would save a lot of typing Currently, when dragging a preset button onto a page, the preset completely replaces the button.

Usecases

This would simplify creating buttons that target multiple devices/software.

  1. Drag a preset to create new button
  2. Drag a preset from another connection with the option to merge/append actions and feedback
  3. repeat as needed
Julusian commented 3 months ago

I'm open to this, it will need some thought on how best to tackle to avoid annoyance to users familiar with the current flow.

I suspect that this will require us to prompt when dropping a preset over an existing button, to ask what should happen. That prompt should allow for: 1) Replace 2) Merge 3) Cancel

Merge will probably want some checkboxes to ask how to merge it, (replace the style, actions, feedbacks)

I guess it will probably be fine if one side has more steps or duration groups than the other

Some challenges I forsee:

1) I don't know what we can do currently if the button and preset disagree on 'relative delays' or 'progress'. 2) Or if two duration groups disagree on 'while held' 3) what to do about names of steps?