lcdRefresh() already does switch the layers, no need to do it 2 steps
This commit is contained in:
@@ -430,5 +430,9 @@ class BitmapBuffer: public BitmapBufferBase<pixel_t>
|
||||
bool liangBarskyClipper(coord_t& x1, coord_t& y1, coord_t& x2, coord_t& y2);
|
||||
};
|
||||
|
||||
// Back buffer to draw
|
||||
extern BitmapBuffer * lcd;
|
||||
|
||||
// Buffer currently on display
|
||||
extern BitmapBuffer * lcdFront;
|
||||
|
||||
|
||||
+1
-4
@@ -104,13 +104,10 @@ bool MainWindow::refresh()
|
||||
if (invalidatedRect.w) {
|
||||
if (invalidatedRect.x > 0 || invalidatedRect.y > 0 || invalidatedRect.w < LCD_W || invalidatedRect.h < LCD_H) {
|
||||
TRACE_WINDOWS("Refresh rect: left=%d top=%d width=%d height=%d", invalidatedRect.left(), invalidatedRect.top(), invalidatedRect.w, invalidatedRect.h);
|
||||
const BitmapBuffer * previous = lcd;
|
||||
lcdNextLayer();
|
||||
lcdCopy(lcd->getData(), previous->getData());
|
||||
lcdCopy(lcd->getData(), lcdFront->getData());
|
||||
}
|
||||
else {
|
||||
TRACE_WINDOWS("Refresh full screen");
|
||||
lcdNextLayer();
|
||||
}
|
||||
lcd->setOffset(0, 0);
|
||||
lcd->setClippingRect(invalidatedRect.left(), invalidatedRect.right(), invalidatedRect.top(), invalidatedRect.bottom());
|
||||
|
||||
Reference in New Issue
Block a user