summaryrefslogtreecommitdiff
path: root/firmware/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/drivers')
-rw-r--r--firmware/drivers/lcd-bitmap-common.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/firmware/drivers/lcd-bitmap-common.c b/firmware/drivers/lcd-bitmap-common.c
index 48710df49b..4fe095096f 100644
--- a/firmware/drivers/lcd-bitmap-common.c
+++ b/firmware/drivers/lcd-bitmap-common.c
@@ -178,7 +178,13 @@ struct viewport *LCDFN(get_viewport)(bool *is_default)
178 178
179void LCDFN(update_viewport)(void) 179void LCDFN(update_viewport)(void)
180{ 180{
181
181 struct viewport* vp = LCDFN(current_viewport); 182 struct viewport* vp = LCDFN(current_viewport);
183 if ((vp->flags & VP_FLAG_OWNER_UPDATE) == VP_FLAG_OWNER_UPDATE)
184 {
185 logf("%s ignored - owner update", __func__);
186 return;
187 }
182 int x, y; 188 int x, y;
183 if (vp->buffer->stride != LCDFN(framebuffer_default.stride)) 189 if (vp->buffer->stride != LCDFN(framebuffer_default.stride))
184 { 190 {
@@ -196,7 +202,11 @@ void LCDFN(update_viewport)(void)
196void LCDFN(update_viewport_rect)(int x, int y, int width, int height) 202void LCDFN(update_viewport_rect)(int x, int y, int width, int height)
197{ 203{
198 struct viewport* vp = LCDFN(current_viewport); 204 struct viewport* vp = LCDFN(current_viewport);
199 205 if ((vp->flags & VP_FLAG_OWNER_UPDATE) == VP_FLAG_OWNER_UPDATE)
206 {
207 logf("%s ignored - owner update", __func__);
208 return;
209 }
200 /* handle the case of viewport with differing stride from main screen */ 210 /* handle the case of viewport with differing stride from main screen */
201 if (vp->buffer->stride != LCDFN(framebuffer_default.stride)) 211 if (vp->buffer->stride != LCDFN(framebuffer_default.stride))
202 { 212 {