diff --git a/radio/src/thirdparty/libopenui/src/bitmapbuffer.cpp b/radio/src/thirdparty/libopenui/src/bitmapbuffer.cpp index 634a2a7c6..027a21d31 100644 --- a/radio/src/thirdparty/libopenui/src/bitmapbuffer.cpp +++ b/radio/src/thirdparty/libopenui/src/bitmapbuffer.cpp @@ -463,7 +463,7 @@ coord_t BitmapBuffer::drawSizedText(coord_t x, coord_t y, const char * s, uint8_ RESTORE_OFFSET(); - return pos - offsetX; + return ((flags & RIGHT) ? orig_pos : pos) - offsetX; } coord_t BitmapBuffer::drawNumber(coord_t x, coord_t y, int32_t val, LcdFlags flags, uint8_t len, const char * prefix, const char * suffix) diff --git a/radio/src/thirdparty/libopenui/src/table.h b/radio/src/thirdparty/libopenui/src/table.h index cbe98d386..51f892137 100644 --- a/radio/src/thirdparty/libopenui/src/table.h +++ b/radio/src/thirdparty/libopenui/src/table.h @@ -92,8 +92,8 @@ class Table: public Window { public: Table(Window * parent, const rect_t & rect, uint8_t columnsCount): Window(parent, rect), - header(this, {0, 0, width(), TABLE_HEADER_HEIGHT}), - body(this, {0, TABLE_HEADER_HEIGHT, width(), height() - TABLE_HEADER_HEIGHT}) + header(this, {0, 0, width(), 0}), + body(this, {0, 0, width(), height()}) { setColumnsCount(columnsCount); } @@ -131,6 +131,9 @@ class Table: public Window { void setHeader(const char * const values[]) { + header.setHeight(TABLE_HEADER_HEIGHT); + body.setTop(TABLE_HEADER_HEIGHT); + body.setHeight(height() - TABLE_HEADER_HEIGHT); Line line; for (uint8_t i = 0; i < count; i++) { line.values.push_back(values[i]);