diff -urp vte-0.34.8.ubuntu/src/vte.c vte-0.34.8/src/vte.c
--- vte-0.34.8.ubuntu/src/vte.c	2013-09-30 21:06:56.563925290 +0200
+++ vte-0.34.8/src/vte.c	2013-09-30 21:17:14.643950914 +0200
@@ -8422,6 +8422,7 @@ vte_terminal_init(VteTerminal *terminal)
 	pvt->scroll_on_keystroke = TRUE;
         pvt->scrollback_lines = -1; /* force update in vte_terminal_set_scrollback_lines */
 	vte_terminal_set_scrollback_lines(terminal, VTE_SCROLLBACK_INIT);
+	pvt->alternate_screen_scroll = TRUE;
 
 	/* Selection info. */
 	vte_terminal_set_word_chars(terminal, NULL);
diff -urp vte-0.34.8.ubuntu/src/vteseq.c vte-0.34.8/src/vteseq.c
--- vte-0.34.8.ubuntu/src/vteseq.c	2013-09-30 21:06:41.683924673 +0200
+++ vte-0.34.8/src/vteseq.c	2013-09-30 21:14:55.679945153 +0200
@@ -737,6 +737,11 @@ vte_sequence_handler_decset_internal(Vte
 		 GINT_TO_POINTER(FALSE),
 		 GINT_TO_POINTER(TRUE),
 		 NULL, NULL,},
+		/* 1007: Alternate screen scroll. */
+		{1007, &terminal->pvt->alternate_screen_scroll, NULL, NULL,
+		 GINT_TO_POINTER(FALSE),
+		 GINT_TO_POINTER(TRUE),
+		 NULL, NULL,},
 		/* 1010/rxvt: disallowed, scroll-on-output is set by user. */
 		{1010, NULL, NULL, NULL, NULL, NULL, NULL, NULL,},
 		/* 1011/rxvt: disallowed, scroll-on-keypress is set by user. */
