Enable most features by default (if configure finds the needed dependencies)
Provide reasonable PAM files for most distros
Recognize and tell the user when a password change is needed
Fall back to IPv4 on systems that don't support IPv6
Medium term
Use glib or APR as portability/convenience layer
Write to console only for fatal errors, log everything that goes to console now
Port Kerberos authentication to GSSAPI
Deprecate X11rdp, bring all X11rdp features to xorgxrdp
Use extensible message passing to communicate to xorgxrdp
Only show backends actually runnable by xrdp-sesman
Long term
Redesign login screen to allow session selection and multi-factor authentication
RAIL
On the client side, when a window is minimized, a minimize command is sent and in xrdp rail.c function rail_process_system_command() gets called with SC_MINIMIZE. In response XUnmapWindow() is called, triggering an UnmapNotify event, which sends a WINDOW_HIDE to the RAIL client in file xf_window.c function xf_ShowWindow(). This causes the window on the client side to be hidden and thereafter inaccessible. The server should send a WINDOW_MINIMIZED message instead. As a workaround this issue is being fixed on the client side, but requires a final fix to be on the server side