Extend switch action to support source.buffer