Dan ... could you SEQUESTER ... or isolate the code from wings_vertex to a new module called wings_connect_cuts ? So that I might more easily play with the sum of what new refactors you have done ? This would leave alone the wings_vertex_cmd changes to provide user access.
Like this ... only moving out this function and its supporting functions ...
wings_connect_cut:connect_cut(VS0, VE0, #we{} = We0)
The bug was not with hot keys. It's also not due to overlapping cuts. Even though somehow seems more likely with overlapping-cuts. The bug is from using the topological approach and not picking the shortest of the two or more loops created by the start and end points.
Like this ... only moving out this function and its supporting functions ...
wings_connect_cut:connect_cut(VS0, VE0, #we{} = We0)
The bug was not with hot keys. It's also not due to overlapping cuts. Even though somehow seems more likely with overlapping-cuts. The bug is from using the topological approach and not picking the shortest of the two or more loops created by the start and end points.