Merge change 23720 into eclair

* changes:
  Add colorkey to gl clear operation
This commit is contained in:
Android (Google) Code Review
2009-09-02 17:05:31 -07:00
3 changed files with 17 additions and 4 deletions

View File

@@ -354,11 +354,13 @@ GLuint LayerBase::createTexture() const
return textureName;
}
void LayerBase::clearWithOpenGL(const Region& clip) const
void LayerBase::clearWithOpenGL(const Region& clip, GLclampx red,
GLclampx green, GLclampx blue,
GLclampx alpha) const
{
const DisplayHardware& hw(graphicPlane(0).displayHardware());
const uint32_t fbHeight = hw.getHeight();
glColor4x(0,0,0,0);
glColor4x(red,green,blue,alpha);
glDisable(GL_TEXTURE_2D);
glDisable(GL_BLEND);
glDisable(GL_DITHER);
@@ -377,6 +379,11 @@ void LayerBase::clearWithOpenGL(const Region& clip) const
}
}
void LayerBase::clearWithOpenGL(const Region& clip) const
{
clearWithOpenGL(clip,0,0,0,0);
}
void LayerBase::drawWithOpenGL(const Region& clip, const Texture& texture) const
{
const DisplayHardware& hw(graphicPlane(0).displayHardware());

View File

@@ -251,7 +251,9 @@ protected:
uint32_t transform;
bool dirty;
};
void clearWithOpenGL(const Region& clip, GLclampx r, GLclampx g,
GLclampx b, GLclampx alpha) const;
void clearWithOpenGL(const Region& clip) const;
void drawWithOpenGL(const Region& clip, const Texture& texture) const;
void loadTexture(Texture* texture, GLint textureName,

View File

@@ -600,7 +600,11 @@ LayerBuffer::OverlaySource::~OverlaySource()
void LayerBuffer::OverlaySource::onDraw(const Region& clip) const
{
mLayer.clearWithOpenGL(clip);
GLclampx color = 0x000018; //dark blue
GLclampx red = 0;
GLclampx green = 0;
GLclampx blue = 0x1818;
mLayer.clearWithOpenGL(clip, red, green, blue, 0);
}
void LayerBuffer::OverlaySource::onTransaction(uint32_t flags)