llMdown = MDOWN() IF EMPTY(This.Value) and NOT llMDown ...Why? Because the user can click the mouse quickly and the button may be back up before the first part of the IF is evaluated. BY saving MDOWN() to a var as the first executable line of code you diminish the possibility of the mouse click being missed.