From a8562c7a5c8629485dd1cb02007f749083047cea Mon Sep 17 00:00:00 2001 From: David Herrmann Date: Fri, 23 Mar 2012 13:34:20 +0100 Subject: [PATCH] uterm_video: add *_screen_height/width() helpers A screen may have a different size than the displays so add these two hooks. Signed-off-by: David Herrmann --- src/uterm.h | 3 +++ src/uterm_video.c | 16 ++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/src/uterm.h b/src/uterm.h index 594a7f9..91d90fb 100644 --- a/src/uterm.h +++ b/src/uterm.h @@ -128,6 +128,9 @@ int uterm_screen_new_single(struct uterm_screen **out, void uterm_screen_ref(struct uterm_screen *screen); void uterm_screen_unref(struct uterm_screen *screen); +unsigned int uterm_screen_width(struct uterm_screen *screen); +unsigned int uterm_screen_height(struct uterm_screen *screen); + int uterm_screen_use(struct uterm_screen *screen); int uterm_screen_swap(struct uterm_screen *screen); diff --git a/src/uterm_video.c b/src/uterm_video.c index c882fa1..55d470c 100644 --- a/src/uterm_video.c +++ b/src/uterm_video.c @@ -101,6 +101,22 @@ void uterm_screen_unref(struct uterm_screen *screen) free(screen); } +unsigned int uterm_screen_width(struct uterm_screen *screen) +{ + if (!screen) + return 0; + + return uterm_mode_get_width(uterm_display_get_current(screen->disp)); +} + +unsigned int uterm_screen_height(struct uterm_screen *screen) +{ + if (!screen) + return 0; + + return uterm_mode_get_height(uterm_display_get_current(screen->disp)); +} + int uterm_screen_use(struct uterm_screen *screen) { if (!screen || !display_is_online(screen->disp))