more interface tweaks and bug fixes for weird cases