Index: uspace/lib/ui/src/ui.c
===================================================================
--- uspace/lib/ui/src/ui.c	(revision bad765aeead3c3c8a80a051d57b663e07ef71cf2)
+++ uspace/lib/ui/src/ui.c	(revision e3e64f6340a26ef3cc5197ad631a2db10e1e7557)
@@ -399,7 +399,36 @@
 	errno_t rc;
 	ui_window_t *awnd;
+	sysarg_t col;
+	sysarg_t row;
+	cons_event_t ev;
 
 	if (ui->cgc == NULL)
 		return EOK;
+
+	rc = console_get_pos(ui->console, &col, &row);
+	if (rc != EOK)
+		return rc;
+
+	/*
+	 * Here's a little heuristic to help determine if we need
+	 * to pause before returning to the UI. If we are in the
+	 * top-left corner, chances are the screen is empty and
+	 * there is no need to pause.
+	 */
+	if (col != 0 || row != 0) {
+		printf("Press any key or button to continue...\n");
+
+		while (true) {
+			rc = console_get_event(ui->console, &ev);
+			if (rc != EOK)
+				return EIO;
+
+			if (ev.type == CEV_KEY && ev.ev.key.type == KEY_PRESS)
+				break;
+
+			if (ev.type == CEV_POS && ev.ev.pos.type == POS_PRESS)
+				break;
+		}
+	}
 
 	rc = console_gc_resume(ui->cgc);
