It’s a lot less ‘messy’ than using decimals (which I thought was the thing you’re trying to avoid anyway - otherwise, what’s the issue?).
the way you described it would have problems. If i had a list of 5 things, and I moved the #2 in between #4 and #5. Then subtracted the ones below by 1 then 4 would be #3, 3 would be #2 and 1 would be -1.
What? That’s not what I said at all - you’ve misunderstood - I never said anything about subtracting the ones below it, it’s the opposite (you subtract from the ones above it, not below it, as you’re removing that item from its original position) - read it again.
The logic is simple:
1 stays as 1
2 becomes 4
3 becomes 2
4 becomes 3
5 stays as 5
Theres usually issues like that making it quite complicated, the decimals seem to work better considering there will be lots of exceptions to your rule.
Not at all… this can all be done with 2 very simple workflows (1 to adjust the order when moving to a higher position, and one to adjust the order when moving to a lower position).
And there is never an exception to the rule - either you’re moving an item higher, or you’re moving it lower. The logic always remains the same.
FWIW over the past year I’ve built some very complex drag and drop functionality in a number of Bubble apps, far more complex than simply re-ordering a RG (involving multiple different datatypes, multiple lists, sub-lists, nested RGs, and more), and it can get fairly complicated and require some custom code for it to work.
But for simply reordering a list in a RG, it’s simple to do in vanilla Bubble, as I’ve described above.