From cb178cdc4e8c06adae90c1606be32d485eefa4ca Mon Sep 17 00:00:00 2001 From: David Herrmann Date: Tue, 14 Aug 2012 15:44:55 +0200 Subject: [PATCH] console: add function to set default-attribute This new function allows other layers to control the default attribute of a console. This attribute is used when clearing the screen or when allocating new cells. Signed-off-by: David Herrmann --- src/console.c | 9 +++++++++ src/console.h | 2 ++ 2 files changed, 11 insertions(+) diff --git a/src/console.c b/src/console.c index 6aff140..a0fa2ef 100644 --- a/src/console.c +++ b/src/console.c @@ -627,6 +627,15 @@ void kmscon_console_clear_sb(struct kmscon_console *con) con->sb_pos = NULL; } +void kmscon_console_set_def_attr(struct kmscon_console *con, + const struct font_char_attr *attr) +{ + if (!con || !attr) + return; + + memcpy(&con->def_attr, attr, sizeof(*attr)); +} + void kmscon_console_reset(struct kmscon_console *con) { unsigned int i; diff --git a/src/console.h b/src/console.h index dfa8ca0..b7cd340 100644 --- a/src/console.h +++ b/src/console.h @@ -63,6 +63,8 @@ int kmscon_console_set_margins(struct kmscon_console *con, void kmscon_console_set_max_sb(struct kmscon_console *con, unsigned int max); void kmscon_console_clear_sb(struct kmscon_console *con); +void kmscon_console_set_def_attr(struct kmscon_console *con, + const struct font_char_attr *attr); void kmscon_console_reset(struct kmscon_console *con); void kmscon_console_set_flags(struct kmscon_console *con, unsigned int flags); void kmscon_console_reset_flags(struct kmscon_console *con, unsigned int flags);