Index: uspace/lib/ui/include/types/ui/selectdialog.h
===================================================================
--- uspace/lib/ui/include/types/ui/selectdialog.h	(revision accdf8823a3853db4616f504c82346a216b4eef0)
+++ uspace/lib/ui/include/types/ui/selectdialog.h	(revision 59e32fbe6e75e6b886c6f31fd67d81855eed7464)
@@ -1,4 +1,4 @@
 /*
- * Copyright (c) 2023 Jiri Svoboda
+ * Copyright (c) 2025 Jiri Svoboda
  * All rights reserved.
  *
@@ -44,4 +44,12 @@
 typedef struct ui_select_dialog ui_select_dialog_t;
 
+/** Select dialog flags */
+typedef enum {
+	/** Topmost window */
+	usdf_topmost = 0x1,
+	/** Place to the center of the screen */
+	usdf_center = 0x2
+} ui_select_dialog_flags_t;
+
 /** Select dialog parameters */
 typedef struct {
@@ -50,4 +58,6 @@
 	/** Prompt text */
 	const char *prompt;
+	/** Flags */
+	ui_select_dialog_flags_t flags;
 } ui_select_dialog_params_t;
 
Index: uspace/lib/ui/src/selectdialog.c
===================================================================
--- uspace/lib/ui/src/selectdialog.c	(revision accdf8823a3853db4616f504c82346a216b4eef0)
+++ uspace/lib/ui/src/selectdialog.c	(revision 59e32fbe6e75e6b886c6f31fd67d81855eed7464)
@@ -1,4 +1,4 @@
 /*
- * Copyright (c) 2023 Jiri Svoboda
+ * Copyright (c) 2025 Jiri Svoboda
  * All rights reserved.
  *
@@ -114,4 +114,9 @@
 	ui_wnd_params_init(&wparams);
 	wparams.caption = params->caption;
+
+	if ((params->flags & usdf_topmost) != 0)
+		wparams.flags |= wndf_topmost;
+	if ((params->flags & usdf_center) != 0)
+		wparams.placement = ui_wnd_place_center;
 
 	/* FIXME: Auto layout */
