Index: uspace/lib/ui/include/types/ui/wdecor.h
===================================================================
--- uspace/lib/ui/include/types/ui/wdecor.h	(revision ed1a948bd3e432a2b365592aefbf84cf73a3fa9f)
+++ uspace/lib/ui/include/types/ui/wdecor.h	(revision 7e6603784b2bbda102aa3edc13f5c1d8326b4a66)
@@ -84,5 +84,8 @@
 /** Window decoration callbacks */
 typedef struct ui_wdecor_cb {
-	void (*sysmenu)(ui_wdecor_t *, void *, sysarg_t);
+	void (*sysmenu_open)(ui_wdecor_t *, void *, sysarg_t);
+	void (*sysmenu_left)(ui_wdecor_t *, void *, sysarg_t);
+	void (*sysmenu_right)(ui_wdecor_t *, void *, sysarg_t);
+	void (*sysmenu_accel)(ui_wdecor_t *, void *, char32_t, sysarg_t);
 	void (*minimize)(ui_wdecor_t *, void *);
 	void (*maximize)(ui_wdecor_t *, void *);
Index: uspace/lib/ui/include/ui/menubar.h
===================================================================
--- uspace/lib/ui/include/ui/menubar.h	(revision ed1a948bd3e432a2b365592aefbf84cf73a3fa9f)
+++ uspace/lib/ui/include/ui/menubar.h	(revision 7e6603784b2bbda102aa3edc13f5c1d8326b4a66)
@@ -61,4 +61,6 @@
 extern void ui_menu_bar_activate(ui_menu_bar_t *);
 extern void ui_menu_bar_deactivate(ui_menu_bar_t *);
+extern void ui_menu_bar_select_first(ui_menu_bar_t *, bool, sysarg_t);
+extern void ui_menu_bar_select_last(ui_menu_bar_t *, bool, sysarg_t);
 
 #endif
