When a command like play(), pause(), or seek() is called while the videoDisplay is unresponsive it gets put on a queue, how do I flush this queue so the most recent command is the only command processed?
Instead of trying to flush the queue, check to see if the stateResponsive is true. If true, send the command to the videoDisplay, if false, store the command until the videoDisplay's stateResponsive is true and then send the command.