Add a new state uploading to UploadedTexture.

This state means the texture is being uploaded in background and should
not be drawn now to prevent janking.

Sometimes, we may lose GLContext and we will need to reupload
textures again. In this case, we would like to upload these texture in
foreground instead of using TextureUploader.
(for simplicity since this won't happen too often).

bug: 6519344
Change-Id: Ic5d7547c6a0eb4b044b79aa0eb4eb52397faac03
15 files changed