From e1a64374735fb5680df3f85f1af3f3f836034e4a Mon Sep 17 00:00:00 2001 From: David Herrmann Date: Tue, 28 Aug 2012 10:41:33 +0200 Subject: [PATCH] main: add --render-engine option This option allows changing the console renderer during runtime. This is only useful for debugging. The default choice should be best for all situations. Signed-off-by: David Herrmann --- src/main.c | 2 ++ src/main.h | 2 ++ src/terminal.c | 4 +++- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main.c b/src/main.c index 5b6ad57..1bdbe35 100644 --- a/src/main.c +++ b/src/main.c @@ -433,6 +433,7 @@ static void print_help() "\t --dumb [off] Use dumb DRM instead of hardware-\n" "\t accelerated DRM devices\n" "\t --fps [50] Limit frame-rate\n" + "\t --render-engine [-] Console renderer\n" "\n" "Input Device Options:\n" "\t --xkb-layout [us] Set XkbLayout for input devices\n" @@ -525,6 +526,7 @@ struct conf_option options[] = { CONF_OPTION_BOOL(0, "fbdev", NULL, &kmscon_conf.use_fbdev, false), CONF_OPTION_BOOL(0, "dumb", NULL, &kmscon_conf.dumb, false), CONF_OPTION_UINT(0, "fps", NULL, &kmscon_conf.fps, 50), + CONF_OPTION_STRING(0, "render-engine", NULL, &kmscon_conf.render_engine, NULL), CONF_OPTION_BOOL('s', "switchvt", NULL, &kmscon_conf.switchvt, false), CONF_OPTION_BOOL('l', "login", aftercheck_login, &kmscon_conf.login, false), CONF_OPTION_STRING('t', "term", NULL, &kmscon_conf.term, "vt220"), diff --git a/src/main.h b/src/main.h index 9b305bf..3d34155 100644 --- a/src/main.h +++ b/src/main.h @@ -51,6 +51,8 @@ struct kmscon_conf_t { bool use_fbdev; /* use dumb DRM devices */ bool dumb; + /* render engine */ + char *render_engine; /* input KBD layout */ char *xkb_layout; diff --git a/src/terminal.c b/src/terminal.c index ed1eb34..99e7a52 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -212,7 +212,9 @@ static int add_display(struct kmscon_terminal *term, struct uterm_display *disp) } ret = uterm_screen_use(scr->screen); - if (!ret) + if (kmscon_conf.render_engine) + be = kmscon_conf.render_engine; + else if (!ret) be = "gltex"; else be = NULL;