antimicrox icon indicating copy to clipboard operation
antimicrox copied to clipboard

Changing sets with "While held" breaks while using more than two sets.

Open ZeptoBST opened this issue 2 years ago • 2 comments

Is there an existing issue for this?

  • [X] I have searched the existing issues

Current Behavior

My setup:

While holding "Guide" on Set 1, it will switch to Set 2.

Then while holding "Select" on Set 2, it will switch to Set 3.

Then on Set 3, pressing the "B" button will execute a .bat file.


Problem:

If I do: "Select + Guide", instead of: "Guide + Select", I will end up stuck on Set 2.

Same thing happens if after pressing: "Guide + Select", I release "Guide" before releasing "Select".

Expected Behavior

When pressing the buttons in the wrong order: ex: "Select + Guide" instead of "Guide + Select", nothing should happen until I perform the correct sequence.

Or

If I release all the buttons, it should always go back to Set 1.

Steps To Reproduce

  1. While on Set 1, assign a button to change to Set 2 while held (let's say: A).
  2. While on Set 2, assign a different button to change to Set 3 while held (let's say: B).
  3. Instead of performing the correct "A + B", proceed with "B + A". Or After performing the correct "A + B", instead of releasing "B then A", proceed with releasing "A then B".
  4. Congratulations, you are now most likely stuck on Set 2.

Environment

- OS: Windows 11
- AntiMicroX version: 3.2.2

Anything else?

No response

ZeptoBST avatar Mar 15 '22 16:03 ZeptoBST

That's interesting observation.
I don't think anybody thought about this way of using set changes during implementation.

I will think about solution

pktiuk avatar Apr 13 '22 20:04 pktiuk

I just ran into a similar issue. I had a button on set 4 WH to set 5. Then I copied set 1 to set 5. Then I was stuck on set 5.

It looks like the problem is that when selecting a WH set change, the target set gets updated with a reversal action. If the target set is updated after that, the return link is broken. I think the best way to handle WH set changes is leave the target set alone and ignore the triggering widget, or overlay that widget onto the target set only while held.

I use the term widget to indicate a button, axis, key, whatever triggers the set change.

That would fix bugs like this, which are easy to generate when copying from another set.

fuzzy7k avatar Mar 22 '23 18:03 fuzzy7k