Almost :)

You need to set it _before_ dispatching on press. Otherwise, you cannot check it in the on_press behavior.
Also, add it before dispatching "on_release". Both case are interesting to have.