As I understand it with text inputs, if defer updates are on, when the user signifies they are done typing, then the property change runs. So yes it will stay as the new text person wrote unless they decline the confirmation message, hence the need to revert with
else: event.source.text = event.oldValue.
Leave the text inputs disabled. Put a button on the side. Have the button call
system.gui.inputBox to get the users desired new text, use
system.gui.confirm to get confirmation, and from there write the text from your inputBox to the text label or whatever component. Never let the person write directly into the text input box if you are concerned about property changes.