Re-use on_change_with_amount in get_amount

issue4167
review12501002