Use shownby/hiddenby instead open/close