Index: uspace/lib/ui/test/paint.c
===================================================================
--- uspace/lib/ui/test/paint.c	(revision 7020d1ffb2252c7a016ab32d1c98df8473acee73)
+++ uspace/lib/ui/test/paint.c	(revision f14a90066cd9ee80ba3be653000616761b788e7c)
@@ -134,4 +134,33 @@
 	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
 
+	ui_resource_destroy(resource);
+	rc = gfx_context_delete(gc);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+}
+
+/** Paint filled circle */
+PCUT_TEST(filled_circle)
+{
+	errno_t rc;
+	gfx_context_t *gc = NULL;
+	test_gc_t tgc;
+	gfx_coord2_t center;
+
+	memset(&tgc, 0, sizeof(tgc));
+	rc = gfx_context_new(&ops, &tgc, &gc);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+
+	/* Paint filled circle / upper-left half */
+	rc = ui_paint_filled_circle(gc, &center, 10, ui_fcircle_upleft);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+
+	/* Paint filled circle / lower-right half */
+	rc = ui_paint_filled_circle(gc, &center, 10, ui_fcircle_lowright);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+
+	/* Paint entire filled circle */
+	rc = ui_paint_filled_circle(gc, &center, 10, ui_fcircle_entire);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+
 	rc = gfx_context_delete(gc);
 	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
Index: uspace/lib/ui/test/rbutton.c
===================================================================
--- uspace/lib/ui/test/rbutton.c	(revision 7020d1ffb2252c7a016ab32d1c98df8473acee73)
+++ uspace/lib/ui/test/rbutton.c	(revision f14a90066cd9ee80ba3be653000616761b788e7c)
@@ -236,5 +236,6 @@
 	ui_resource_t *resource = NULL;
 	ui_rbutton_group_t *group = NULL;
-	ui_rbutton_t *rbutton;
+	ui_rbutton_t *rbutton1;
+	ui_rbutton_t *rbutton2;
 	test_cb_resp_t resp;
 
@@ -251,27 +252,32 @@
 	PCUT_ASSERT_NULL(group->selected);
 
-	rc = ui_rbutton_create(group, "Hello", NULL, &rbutton);
-	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
+	rc = ui_rbutton_create(group, "One", NULL, &rbutton1);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	rc = ui_rbutton_create(group, "Two", NULL, &rbutton2);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
 
 	resp.selected = false;
 	ui_rbutton_group_set_cb(group, &test_rbutton_group_cb, &resp);
 
-	PCUT_ASSERT_FALSE(rbutton->held);
-	PCUT_ASSERT_FALSE(rbutton->inside);
-
-	ui_rbutton_press(rbutton);
-	PCUT_ASSERT_TRUE(rbutton->held);
-	PCUT_ASSERT_TRUE(rbutton->inside);
+	PCUT_ASSERT_FALSE(rbutton2->held);
+	PCUT_ASSERT_FALSE(rbutton2->inside);
+
+	ui_rbutton_press(rbutton2);
+	PCUT_ASSERT_TRUE(rbutton2->held);
+	PCUT_ASSERT_TRUE(rbutton2->inside);
 	PCUT_ASSERT_FALSE(resp.selected);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
-
-	ui_rbutton_release(rbutton);
-	PCUT_ASSERT_FALSE(rbutton->held);
-	PCUT_ASSERT_TRUE(rbutton->inside);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	ui_rbutton_release(rbutton2);
+	PCUT_ASSERT_FALSE(rbutton2->held);
+	PCUT_ASSERT_TRUE(rbutton2->inside);
 	PCUT_ASSERT_TRUE(resp.selected);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
-
-	ui_rbutton_destroy(rbutton);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton2);
+
+	ui_rbutton_destroy(rbutton1);
+	ui_rbutton_destroy(rbutton2);
 	ui_rbutton_group_destroy(group);
 	ui_resource_destroy(resource);
@@ -289,5 +295,6 @@
 	ui_resource_t *resource = NULL;
 	ui_rbutton_group_t *group = NULL;
-	ui_rbutton_t *rbutton;
+	ui_rbutton_t *rbutton1;
+	ui_rbutton_t *rbutton2;
 	test_cb_resp_t resp;
 
@@ -302,33 +309,40 @@
 	rc = ui_rbutton_group_create(resource, &group);
 	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
-
-	rc = ui_rbutton_create(group, "Hello", NULL, &rbutton);
-	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+	PCUT_ASSERT_NULL(group->selected);
+
+	rc = ui_rbutton_create(group, "One", NULL, &rbutton1);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	rc = ui_rbutton_create(group, "Two", NULL, &rbutton2);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
 
 	resp.selected = false;
 	ui_rbutton_group_set_cb(group, &test_rbutton_group_cb, &resp);
 
-	PCUT_ASSERT_FALSE(rbutton->held);
-	PCUT_ASSERT_FALSE(rbutton->inside);
-
-	ui_rbutton_press(rbutton);
-	PCUT_ASSERT_TRUE(rbutton->held);
-	PCUT_ASSERT_TRUE(rbutton->inside);
+	PCUT_ASSERT_FALSE(rbutton2->held);
+	PCUT_ASSERT_FALSE(rbutton2->inside);
+
+	ui_rbutton_press(rbutton2);
+	PCUT_ASSERT_TRUE(rbutton2->held);
+	PCUT_ASSERT_TRUE(rbutton2->inside);
 	PCUT_ASSERT_FALSE(resp.selected);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
-
-	ui_rbutton_leave(rbutton);
-	PCUT_ASSERT_TRUE(rbutton->held);
-	PCUT_ASSERT_FALSE(rbutton->inside);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	ui_rbutton_leave(rbutton2);
+	PCUT_ASSERT_TRUE(rbutton2->held);
+	PCUT_ASSERT_FALSE(rbutton2->inside);
 	PCUT_ASSERT_FALSE(resp.selected);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
-
-	ui_rbutton_release(rbutton);
-	PCUT_ASSERT_FALSE(rbutton->held);
-	PCUT_ASSERT_FALSE(rbutton->inside);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	ui_rbutton_release(rbutton2);
+	PCUT_ASSERT_FALSE(rbutton2->held);
+	PCUT_ASSERT_FALSE(rbutton2->inside);
 	PCUT_ASSERT_FALSE(resp.selected);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
-
-	ui_rbutton_destroy(rbutton);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	ui_rbutton_destroy(rbutton1);
+	ui_rbutton_destroy(rbutton2);
 	ui_rbutton_group_destroy(group);
 	ui_resource_destroy(resource);
@@ -346,5 +360,6 @@
 	ui_resource_t *resource = NULL;
 	ui_rbutton_group_t *group = NULL;
-	ui_rbutton_t *rbutton;
+	ui_rbutton_t *rbutton1;
+	ui_rbutton_t *rbutton2;
 	test_cb_resp_t resp;
 
@@ -359,40 +374,46 @@
 	rc = ui_rbutton_group_create(resource, &group);
 	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
-
-	rc = ui_rbutton_create(group, "Hello", NULL, &rbutton);
-	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
+	PCUT_ASSERT_NULL(group->selected);
+
+	rc = ui_rbutton_create(group, "One", NULL, &rbutton1);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	rc = ui_rbutton_create(group, "Two", NULL, &rbutton2);
+	PCUT_ASSERT_ERRNO_VAL(EOK, rc);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
 
 	resp.selected = false;
 	ui_rbutton_group_set_cb(group, &test_rbutton_group_cb, &resp);
 
-	PCUT_ASSERT_FALSE(rbutton->held);
-	PCUT_ASSERT_FALSE(rbutton->inside);
-
-	ui_rbutton_press(rbutton);
-	PCUT_ASSERT_TRUE(rbutton->held);
-	PCUT_ASSERT_TRUE(rbutton->inside);
+	PCUT_ASSERT_FALSE(rbutton2->held);
+	PCUT_ASSERT_FALSE(rbutton2->inside);
+
+	ui_rbutton_press(rbutton2);
+	PCUT_ASSERT_TRUE(rbutton2->held);
+	PCUT_ASSERT_TRUE(rbutton2->inside);
 	PCUT_ASSERT_FALSE(resp.selected);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
-
-	ui_rbutton_leave(rbutton);
-	PCUT_ASSERT_TRUE(rbutton->held);
-	PCUT_ASSERT_FALSE(rbutton->inside);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	ui_rbutton_leave(rbutton2);
+	PCUT_ASSERT_TRUE(rbutton2->held);
+	PCUT_ASSERT_FALSE(rbutton2->inside);
 	PCUT_ASSERT_FALSE(resp.selected);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
-
-	ui_rbutton_enter(rbutton);
-	PCUT_ASSERT_TRUE(rbutton->held);
-	PCUT_ASSERT_TRUE(rbutton->inside);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	ui_rbutton_enter(rbutton2);
+	PCUT_ASSERT_TRUE(rbutton2->held);
+	PCUT_ASSERT_TRUE(rbutton2->inside);
 	PCUT_ASSERT_FALSE(resp.selected);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
-
-	ui_rbutton_release(rbutton);
-	PCUT_ASSERT_FALSE(rbutton->held);
-	PCUT_ASSERT_TRUE(rbutton->inside);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton1);
+
+	ui_rbutton_release(rbutton2);
+	PCUT_ASSERT_FALSE(rbutton2->held);
+	PCUT_ASSERT_TRUE(rbutton2->inside);
 	PCUT_ASSERT_TRUE(resp.selected);
-	PCUT_ASSERT_EQUALS(group->selected, rbutton);
-
-	ui_rbutton_destroy(rbutton);
+	PCUT_ASSERT_EQUALS(group->selected, rbutton2);
+
+	ui_rbutton_destroy(rbutton1);
+	ui_rbutton_destroy(rbutton2);
 	ui_rbutton_group_destroy(group);
 	ui_resource_destroy(resource);
