Added check to see if all lines in selection are commented (is_commented)
If so remove the comment from each line else add a comment.
If the line is empty, with trailing spaces or tabs, remove those.
This will add an extra comment character to the lines that are already commented,
so when you uncomment a block it retains the previous commented lines.
Following Zylann logic, if the selected lines are all commented out,
it removes one # from each. Otherwise, it adds one.
It works how it is, but i would like some feedback on how to implement this.
I've reverted the first attempt (https://github.com/godotengine/godot/pull/10653).
I was very naive and didn't consider that the glitch happens also if you're not in the first column, ex. if you have 2 tabs and press return in between them.
Hope this will solve the problem without messing anything else.