Index: uspace/app/edit/edit.c
===================================================================
--- uspace/app/edit/edit.c	(revision e2ca44feaf2bb3b90a8560ec94c36cd84b4187a1)
+++ uspace/app/edit/edit.c	(revision db52892aa5d6f96720653988767ec3dda98ea251)
@@ -96,4 +96,7 @@
 	gfx_color_t *color;
 
+	/** Selection color */
+	gfx_color_t *sel_color;
+
 	/* Pane dimensions */
 	int rows, columns;
@@ -925,13 +928,19 @@
 	gfx_rect_t arect;
 
+	pane->control = NULL;
+	pane->color = NULL;
+	pane->sel_color = NULL;
+
 	rc = ui_control_new(&pane_ctl_ops, (void *) pane, &pane->control);
 	if (rc != EOK)
-		return rc;
+		goto error;
 
 	rc = gfx_color_new_ega(0x07, &pane->color);
-	if (rc != EOK) {
-		ui_control_delete(pane->control);
-		return rc;
-	}
+	if (rc != EOK)
+		goto error;
+
+	rc = gfx_color_new_ega(0x1e, &pane->sel_color);
+	if (rc != EOK)
+		goto error;
 
 	pane->res = ui_window_get_res(window);
@@ -948,4 +957,16 @@
 
 	return EOK;
+error:
+	if (pane->control != NULL) {
+		ui_control_delete(pane->control);
+		pane->control = NULL;
+	}
+
+	if (pane->color != NULL) {
+		gfx_color_delete(pane->color);
+		pane->color = NULL;
+	}
+
+	return rc;
 }
 
@@ -960,4 +981,6 @@
 	gfx_color_delete(pane->color);
 	pane->color = NULL;
+	gfx_color_delete(pane->sel_color);
+	pane->sel_color = NULL;
 	ui_control_delete(pane->control);
 	pane->control = NULL;
@@ -1108,5 +1131,4 @@
 	/* Draw rows from the sheet. */
 
-//	console_set_pos(con, 0, 0);
 	for (i = r0; i < r1; ++i) {
 		tpos.x = pane->rect.p0.x;
@@ -1130,25 +1152,16 @@
 		if (coord_cmp(&csel_start, &rbc) <= 0 &&
 		    coord_cmp(&rbc, &csel_end) < 0) {
-//			console_flush(con);
-//			console_set_style(con, STYLE_SELECTED);
-//			console_flush(con);
+			fmt.color = pane->sel_color;
 		}
 
-//		console_set_pos(con, 0, i);
 		size = str_size(row_buf);
 		pos = 0;
 		s_column = pane->sh_column;
 		while (pos < size) {
-			if ((csel_start.row == rbc.row) && (csel_start.column == s_column)) {
-//				console_flush(con);
-//				console_set_style(con, STYLE_SELECTED);
-//				console_flush(con);
-			}
-
-			if ((csel_end.row == rbc.row) && (csel_end.column == s_column)) {
-//				console_flush(con);
-//				console_set_style(con, STYLE_NORMAL);
-//				console_flush(con);
-			}
+			if ((csel_start.row == rbc.row) && (csel_start.column == s_column))
+				fmt.color = pane->sel_color;
+
+			if ((csel_end.row == rbc.row) && (csel_end.column == s_column))
+				fmt.color = pane->color;
 
 			c = str_decode(row_buf, &pos, size);
@@ -1187,9 +1200,6 @@
 		}
 
-		if ((csel_end.row == rbc.row) && (csel_end.column == s_column)) {
-//			console_flush(con);
-//			console_set_style(con, STYLE_NORMAL);
-//			console_flush(con);
-		}
+		if ((csel_end.row == rbc.row) && (csel_end.column == s_column))
+			fmt.color = pane->color;
 
 		/* Fill until the end of display area. */
