BufferQueueProducer::queueBuffer may not drop buffers

Enable BufferQueueProducer::setDequeueTimeout retain existing
dropping behavior. Setting negative and zero to setDequeueTimeout will
not change existing dropping behavior.

BufferQueueProducer::setLegacyBufferDrop can disable buffer dropping
behavior of BufferQueueProducer::queueBuffer. If it's disabled, buffers
will not be dropped unless consumer is SurfaceFlinger.

Bug: 130039639
Change-Id: I8432a7ad386836498e632c67953ad49c6be008bb
8 files changed