Index: uspace/app/launcher/launcher.c
===================================================================
--- uspace/app/launcher/launcher.c	(revision b48e680f7fd780655df7bd1559d565a3abb1f45f)
+++ uspace/app/launcher/launcher.c	(revision ec8a1bf729633d598cbbcad31d55f267ed2c6237)
@@ -96,10 +96,12 @@
 		app_launchl("/app/terminal", "-c", "/app/nav", NULL);
 	} else if (pbutton == launcher->pb2) {
+		app_launchl("/app/terminal", "-c", "/app/edit", NULL);
+	} else if (pbutton == launcher->pb3) {
 		app_launchl("/app/terminal", NULL);
-	} else if (pbutton == launcher->pb3) {
+	} else if (pbutton == launcher->pb4) {
 		app_launchl("/app/calculator", NULL);
-	} else if (pbutton == launcher->pb4) {
+	} else if (pbutton == launcher->pb5) {
 		app_launchl("/app/uidemo", NULL);
-	} else if (pbutton == launcher->pb5) {
+	} else if (pbutton == launcher->pb6) {
 		app_launchl("/app/gfxdemo", "ui", NULL);
 	}
@@ -222,5 +224,5 @@
 	params.rect.p0.y = 0;
 	params.rect.p1.x = 210;
-	params.rect.p1.y = 310;
+	params.rect.p1.y = 345;
 
 	memset((void *) &launcher, 0, sizeof(launcher));
@@ -318,21 +320,43 @@
 	}
 
+	/* Text Editor */
+
+	rc = ui_pbutton_create(ui_res, "Text Editor", &launcher.pb2);
+	if (rc != EOK) {
+		printf("Error creating button.\n");
+		return rc;
+	}
+
+	ui_pbutton_set_cb(launcher.pb2, &pbutton_cb, (void *) &launcher);
+
+	rect.p0.x = 15;
+	rect.p0.y = 130 + 35;
+	rect.p1.x = 190;
+	rect.p1.y = rect.p0.y + 28;
+	ui_pbutton_set_rect(launcher.pb2, &rect);
+
+	rc = ui_fixed_add(launcher.fixed, ui_pbutton_ctl(launcher.pb2));
+	if (rc != EOK) {
+		printf("Error adding control to layout.\n");
+		return rc;
+	}
+
 	/* Terminal */
 
-	rc = ui_pbutton_create(ui_res, "Terminal", &launcher.pb2);
-	if (rc != EOK) {
-		printf("Error creating button.\n");
-		return rc;
-	}
-
-	ui_pbutton_set_cb(launcher.pb2, &pbutton_cb, (void *) &launcher);
-
-	rect.p0.x = 15;
-	rect.p0.y = 130 + 35;
-	rect.p1.x = 190;
-	rect.p1.y = rect.p0.y + 28;
-	ui_pbutton_set_rect(launcher.pb2, &rect);
-
-	rc = ui_fixed_add(launcher.fixed, ui_pbutton_ctl(launcher.pb2));
+	rc = ui_pbutton_create(ui_res, "Terminal", &launcher.pb3);
+	if (rc != EOK) {
+		printf("Error creating button.\n");
+		return rc;
+	}
+
+	ui_pbutton_set_cb(launcher.pb3, &pbutton_cb, (void *) &launcher);
+
+	rect.p0.x = 15;
+	rect.p0.y = 130 + 2 * 35;
+	rect.p1.x = 190;
+	rect.p1.y = rect.p0.y + 28;
+	ui_pbutton_set_rect(launcher.pb3, &rect);
+
+	rc = ui_fixed_add(launcher.fixed, ui_pbutton_ctl(launcher.pb3));
 	if (rc != EOK) {
 		printf("Error adding control to layout.\n");
@@ -342,19 +366,19 @@
 	/* Calculator */
 
-	rc = ui_pbutton_create(ui_res, "Calculator", &launcher.pb3);
-	if (rc != EOK) {
-		printf("Error creating button.\n");
-		return rc;
-	}
-
-	ui_pbutton_set_cb(launcher.pb3, &pbutton_cb, (void *) &launcher);
-
-	rect.p0.x = 15;
-	rect.p0.y = 130 + 2 * 35;
-	rect.p1.x = 190;
-	rect.p1.y = rect.p0.y + 28;
-	ui_pbutton_set_rect(launcher.pb3, &rect);
-
-	rc = ui_fixed_add(launcher.fixed, ui_pbutton_ctl(launcher.pb3));
+	rc = ui_pbutton_create(ui_res, "Calculator", &launcher.pb4);
+	if (rc != EOK) {
+		printf("Error creating button.\n");
+		return rc;
+	}
+
+	ui_pbutton_set_cb(launcher.pb4, &pbutton_cb, (void *) &launcher);
+
+	rect.p0.x = 15;
+	rect.p0.y = 130 + 3 * 35;
+	rect.p1.x = 190;
+	rect.p1.y = rect.p0.y + 28;
+	ui_pbutton_set_rect(launcher.pb4, &rect);
+
+	rc = ui_fixed_add(launcher.fixed, ui_pbutton_ctl(launcher.pb4));
 	if (rc != EOK) {
 		printf("Error adding control to layout.\n");
@@ -364,19 +388,19 @@
 	/* UI Demo */
 
-	rc = ui_pbutton_create(ui_res, "UI Demo", &launcher.pb4);
-	if (rc != EOK) {
-		printf("Error creating button.\n");
-		return rc;
-	}
-
-	ui_pbutton_set_cb(launcher.pb4, &pbutton_cb, (void *) &launcher);
-
-	rect.p0.x = 15;
-	rect.p0.y = 130 + 3 * 35;
-	rect.p1.x = 190;
-	rect.p1.y = rect.p0.y + 28;
-	ui_pbutton_set_rect(launcher.pb4, &rect);
-
-	rc = ui_fixed_add(launcher.fixed, ui_pbutton_ctl(launcher.pb4));
+	rc = ui_pbutton_create(ui_res, "UI Demo", &launcher.pb5);
+	if (rc != EOK) {
+		printf("Error creating button.\n");
+		return rc;
+	}
+
+	ui_pbutton_set_cb(launcher.pb5, &pbutton_cb, (void *) &launcher);
+
+	rect.p0.x = 15;
+	rect.p0.y = 130 + 4 * 35;
+	rect.p1.x = 190;
+	rect.p1.y = rect.p0.y + 28;
+	ui_pbutton_set_rect(launcher.pb5, &rect);
+
+	rc = ui_fixed_add(launcher.fixed, ui_pbutton_ctl(launcher.pb5));
 	if (rc != EOK) {
 		printf("Error adding control to layout.\n");
@@ -386,19 +410,19 @@
 	/* GFX Demo */
 
-	rc = ui_pbutton_create(ui_res, "GFX Demo", &launcher.pb5);
-	if (rc != EOK) {
-		printf("Error creating button.\n");
-		return rc;
-	}
-
-	ui_pbutton_set_cb(launcher.pb5, &pbutton_cb, (void *) &launcher);
-
-	rect.p0.x = 15;
-	rect.p0.y = 130 + 4 * 35;
-	rect.p1.x = 190;
-	rect.p1.y = rect.p0.y + 28;
-	ui_pbutton_set_rect(launcher.pb5, &rect);
-
-	rc = ui_fixed_add(launcher.fixed, ui_pbutton_ctl(launcher.pb5));
+	rc = ui_pbutton_create(ui_res, "GFX Demo", &launcher.pb6);
+	if (rc != EOK) {
+		printf("Error creating button.\n");
+		return rc;
+	}
+
+	ui_pbutton_set_cb(launcher.pb6, &pbutton_cb, (void *) &launcher);
+
+	rect.p0.x = 15;
+	rect.p0.y = 130 + 5 * 35;
+	rect.p1.x = 190;
+	rect.p1.y = rect.p0.y + 28;
+	ui_pbutton_set_rect(launcher.pb6, &rect);
+
+	rc = ui_fixed_add(launcher.fixed, ui_pbutton_ctl(launcher.pb6));
 	if (rc != EOK) {
 		printf("Error adding control to layout.\n");
Index: uspace/app/launcher/launcher.h
===================================================================
--- uspace/app/launcher/launcher.h	(revision b48e680f7fd780655df7bd1559d565a3abb1f45f)
+++ uspace/app/launcher/launcher.h	(revision ec8a1bf729633d598cbbcad31d55f267ed2c6237)
@@ -57,4 +57,5 @@
 	ui_pbutton_t *pb4;
 	ui_pbutton_t *pb5;
+	ui_pbutton_t *pb6;
 } launcher_t;
 
