How to handle showNumericKeypad() so the function runs immediately with the new value?

Problem description:

In Ignition Vision 8.3, I have an Int input field bound to a tag.
When I open the numeric keypad using system.gui.showNumericKeypad(event.source.intValue),
the propertyChange event fires using the previous value, not the value entered on the keypad.

I have to input the number twice for my script (which calls a function) to execute correctly.

Goal:
Trigger a function (e.g. QuickFunctions.SelProdLineVATSelection(1)) immediately after a new number is entered using the keypad.

What I’ve tried:

  • Handling logic inside propertyChange → sees old value.

  • Handling logic inside mousePressed → keypad works, but value isn’t committed in time.

  • Setting event.source.intValue = newValue manually — still doesn’t trigger propertyChange with updated value.

Question:
What’s the correct or best-practice way in Vision to handle showNumericKeypad() so the function runs immediately with the new value?

Could you do a tag change script instead?