in Text widget, using a monospace font like "courier new", after the first Tab width of a line, i.e. if Tab width is 8 characters then after the first 8 characters in a line, and/or you inserted characters equal or more than the tab width, no matter where you're standing if you insert a Tab and the preceding character was not a Tab the Tab spacing produced is a single space, this behaviour is not correct, if I'm standing exactly at the Tab width the spacing entered should be a full Tab's width not a single space, and if I am standing a character or more to the right of the Tab width a Tab should enter a spacing enough to make me stand at the next Tab Width of the Widget, this behavior can be proven to be wrong by being inconsistent with Vi, Vim, Emacs, Notepad, and even Firefox behavior, see the attached script for a live demonstration.
this happens always on wish 8.5 and in wish 8.4 if you changed the tab width to the width of any no. of characters using the "font measure" command to acquire the width, I've included the second case in the demo with commented lines,
Demo for Wrong Behavior
Might be that you need to change the tab type.