diff --git a/src/console.c b/src/console.c index c21f43b..d94e99c 100644 --- a/src/console.c +++ b/src/console.c @@ -620,10 +620,21 @@ void kmscon_console_clear_sb(struct kmscon_console *con) void kmscon_console_reset(struct kmscon_console *con) { + unsigned int i; + if (!con) return; - /* TODO: reset console */ + con->flags = 0; + con->margin_top = 0; + con->margin_bottom = con->size_y - 1; + + for (i = 0; i < con->size_y; ++i) { + if (i % 8 == 0) + con->tab_ruler[i] = true; + else + con->tab_ruler[i] = false; + } } void kmscon_console_set_flags(struct kmscon_console *con, unsigned int flags) diff --git a/src/vte.c b/src/vte.c index 0dc6b76..dfef0c5 100644 --- a/src/vte.c +++ b/src/vte.c @@ -373,9 +373,8 @@ void kmscon_vte_reset(struct kmscon_vte *vte) vte->flags |= FLAG_AUTO_REPEAT_MODE; vte->flags |= FLAG_SEND_RECEIVE_MODE; vte->flags |= FLAG_AUTO_WRAP_MODE; - kmscon_console_reset_flags(vte->con, ~0); + kmscon_console_reset(vte->con); kmscon_console_set_flags(vte->con, KMSCON_CONSOLE_AUTO_WRAP); - kmscon_console_set_margins(vte->con, 0, 0); kmscon_utf8_mach_reset(vte->mach); vte->state = STATE_GROUND;