Made some more progress on dragging but ended up commenting out the new implemented code.
Note: This change list is so big because I removed all spaces based tabs and replaced them with the normal tab character.