person I mean in the end it's not really all that complicated... documentation does wonders if you play around with stuff to see how it works.... the only thing that's super complex about it is storing the actual password before converting all the characters to "\u2022" by separating whether it's being added to or removed is predetermined by event in the input sector which contains useful listener info such as the input starting position and ending position each time it's updated we get the start of the string which is useful... with it's one drawback of not being able to control the caret position when setText is invoked... which is why if you want a textbox with all the functionality you'll have to build one on your own from scratch
ASmartCoder if you don't understand then why not try to reverse engineer it? personally i don't mind if people want a copy of my stuff especially if they want to learn the thinking process behind it, though if you do intend to make anything with what I've done (and publish it) a little shoutout in the comments would be nice... if your really confused with anything i can try to clarify though I've been told my explanations sometimes aren't very clear but I'll try my best!