legodude17 / VanillaUIExpanded

5 stars 3 forks source link

UI / UX issue: it is easy to create empty designator groups, on accident, which can't be removed #11

Open slippycheeze opened 2 years ago

slippycheeze commented 2 years ago

the bug report

[](You can find an excerpt from my config with the empty groups here: gist

No hugslib log, since this isn't an "error" as such, so there is nothing of interest in there. I can give you all 825k of the saved config file, if you really want, but that doesn't seem as helpful as this:

  1. Drop a "normal" designator on another designator accidentally. (See below for comments on this.)
  2. Name the group, click ok, etc, as normal.
  3. Select the group.
  4. Drag everything out of the group at the bottom.
  5. Observe: the group has vanished. Yay, got rid of my mistake!
  6. Problem is reproduced. :)

why I feel like I "accidentally" create designator groups all the time

Regarding "accidentally" creating designator groups: for me, it feels very much like there is a microscopic, maybe five pixel wide, line somewhere between 1/3 and 2/3 of the way across a designator that is the "drop what you are dragging before this" section, and everywhere else is "create a designator group."

another reason I create and empty lots of designator groups

It is also the case that, at least visually, I can't change the "icon" of the designator group – which I assume is the "default" action – after creating it. Worse, VUIE makes the perfectly reasonable that what I am dragging should be the "default", not what I am dropping it on.

Because my brain is reversed, I think "what I am dropping it on" should be the default. There isn't any "why" to that, it just is. I'm not "right" about it, just different. Whatever. The current way is fine.

Anyway, reordering inside the group doesn't change that apparent default, so I end up creating a new designator group after I reminded myself that this works backward to how I assume it is going to do.

what I expected

When I emptied out the designator group, and it wasn't visible, I expected it had been destroyed.

So, my suggestion for fixing this is to add what amounts to a check on "if the designator group has no designators in it, destroy it" after changing it. or do that when you save them, or discard it when you load them. something to just make them go away when empty.

Alternately, I'd also be fine if they just drew the empty designator group, and I had to do something else to delete it. Seems less intuitive to me, but shrug, it'd do the job.

slippycheeze commented 2 years ago

obviously, let me know if you want anything more, including video of me reproducing this, the full config file, a hugslib log anyway, me hacking on your code, a pull request because you will accept one but not change it yourself, or whatever.

legodude17 commented 2 years ago

I will make sure to add code to remove empty groups!

It is also the case that, at least visually, I can't change the "icon" of the designator group

The icon is changed automatically as you use it, is is always the last item in the group to be clicked. This is also what vanilla does.