summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/gui/viewport.c5
-rw-r--r--apps/menus/time_menu.c2
-rw-r--r--apps/plugins/lib/pluginlib_touchscreen.c3
-rw-r--r--firmware/drivers/lcd-bitmap-common.c15
-rw-r--r--firmware/export/lcd.h1
5 files changed, 10 insertions, 16 deletions
diff --git a/apps/gui/viewport.c b/apps/gui/viewport.c
index 0b5441e..b91c744 100644
--- a/apps/gui/viewport.c
+++ b/apps/gui/viewport.c
@@ -225,9 +225,7 @@ static bool is_theme_enabled(enum screen_type screen)
int viewport_get_nb_lines(const struct viewport *vp)
{
#ifdef HAVE_LCD_BITMAP
- if (!vp->line_height)
- return vp->height/font_get(vp->font)->height;
- return vp->height/vp->line_height;
+ return vp->height/font_get(vp->font)->height;
#else
(void)vp;
return 2;
@@ -322,7 +320,6 @@ void viewport_set_fullscreen(struct viewport *vp,
set_default_align_flags(vp);
#endif
vp->font = screens[screen].getuifont();
- vp->line_height = 0; /* calculate from font height */
vp->drawmode = DRMODE_SOLID;
#if LCD_DEPTH > 1
#ifdef HAVE_REMOTE_LCD
diff --git a/apps/menus/time_menu.c b/apps/menus/time_menu.c
index 1eb4bd6..9ef4f73 100644
--- a/apps/menus/time_menu.c
+++ b/apps/menus/time_menu.c
@@ -265,7 +265,7 @@ int time_screen(void* ignored)
/* force time to be drawn centered */
clock_vps[i].flags |= VP_FLAG_ALIGN_CENTER;
- font_h = clock_vps[i].line_height ?: (int)font_get(clock_vps[i].font)->height;
+ font_h = font_get(clock_vps[i].font)->height;
nb_lines -= 2; /* at least 2 lines for menu */
if (nb_lines > 4)
nb_lines = 4;
diff --git a/apps/plugins/lib/pluginlib_touchscreen.c b/apps/plugins/lib/pluginlib_touchscreen.c
index 0957507..5903b7c 100644
--- a/apps/plugins/lib/pluginlib_touchscreen.c
+++ b/apps/plugins/lib/pluginlib_touchscreen.c
@@ -140,8 +140,7 @@ void touchbutton_draw(struct touchbutton *data, int num_buttons) {
*/
lcd->set_viewport(&data[i].vp);
- /* Set line_height to height, then it'll center for us */
- data[i].vp.line_height = data[i].vp.height;
+ /* TODO: Center text vert*/
data[i].vp.flags |= VP_FLAG_ALIGN_CENTER;
/* If the width offset was 0, use a scrolling puts, else center and
diff --git a/firmware/drivers/lcd-bitmap-common.c b/firmware/drivers/lcd-bitmap-common.c
index 330639f..97921c6 100644
--- a/firmware/drivers/lcd-bitmap-common.c
+++ b/firmware/drivers/lcd-bitmap-common.c
@@ -387,12 +387,11 @@ void LCDFN(putsxyf)(int x, int y, const unsigned char *fmt, ...)
static void LCDFN(putsxyofs_style)(int xpos, int ypos,
const unsigned char *str, int style,
- int h, int offset)
+ int offset)
{
int lastmode = current_vp->drawmode;
int text_ypos = ypos;
- int line_height = font_get(current_vp->font)->height;
- text_ypos += h/2 - line_height/2; /* center the text in the line */
+ int h = font_get(current_vp->font)->height;
if ((style & STYLE_MODE_MASK) == STYLE_NONE) {
if (str[0])
@@ -452,7 +451,7 @@ static void LCDFN(putsofs_style)(int x, int y, const unsigned char *str,
if(!str)
return;
- h = current_vp->line_height ?: (int)font_get(current_vp->font)->height;
+ h = font_get(current_vp->font)->height;
if ((style&STYLE_XY_PIXELS) == 0)
{
xpos = x * LCDFN(getstringsize)(" ", NULL, NULL);
@@ -464,7 +463,7 @@ static void LCDFN(putsofs_style)(int x, int y, const unsigned char *str,
ypos = y;
}
LCDFN(scroll_stop_viewport_rect)(current_vp, xpos, ypos, current_vp->width - xpos, h);
- LCDFN(putsxyofs_style)(xpos, ypos+y_offset, str, style, h, x_offset);
+ LCDFN(putsxyofs_style)(xpos, ypos+y_offset, str, style, x_offset);
}
void LCDFN(puts)(int x, int y, const unsigned char *str)
@@ -501,7 +500,7 @@ static struct scrollinfo* find_scrolling_line(int x, int y)
void LCDFN(scroll_fn)(struct scrollinfo* s)
{
- LCDFN(putsxyofs_style)(s->x, s->y, s->line, s->style, s->height, s->offset);
+ LCDFN(putsxyofs_style)(s->x, s->y, s->line, s->style, s->offset);
}
static void LCDFN(puts_scroll_worker)(int x, int y, const unsigned char *string,
@@ -521,7 +520,7 @@ static void LCDFN(puts_scroll_worker)(int x, int y, const unsigned char *string,
/* prepare rectangle for scrolling. x and y must be calculated early
* for find_scrolling_line() to work */
cwidth = font_get(current_vp->font)->maxwidth;
- height = current_vp->line_height ?: (int)font_get(current_vp->font)->height;
+ height = font_get(current_vp->font)->height;
y = y * (linebased ? height : 1) + y_offset;
x = x * (linebased ? cwidth : 1);
width = current_vp->width - x;
@@ -535,7 +534,7 @@ static void LCDFN(puts_scroll_worker)(int x, int y, const unsigned char *string,
if (restart) {
/* remove any previously scrolling line at the same location */
LCDFN(scroll_stop_viewport_rect)(current_vp, x, y, width, height);
- LCDFN(putsxyofs_style)(x, y, string, style, height, x_offset);
+ LCDFN(putsxyofs_style)(x, y, string, style, x_offset);
if (LCDFN(scroll_info).lines >= LCDM(SCROLLABLE_LINES))
return;
diff --git a/firmware/export/lcd.h b/firmware/export/lcd.h
index afdc5cf..bdeddf0 100644
--- a/firmware/export/lcd.h
+++ b/firmware/export/lcd.h
@@ -43,7 +43,6 @@ struct viewport {
#ifdef HAVE_LCD_BITMAP
int flags;
int font;
- int line_height; /* 0 for using font height */
int drawmode;
#endif
#if LCD_DEPTH > 1