code: public void removeListener(WindowListener<K,R,P> listener) {
          this.listeners.remove(new UnwrappedWeakReference<WindowListener<K,R,P>>(listener));
      }
docs: Removes a WindowListener if it is present.
  @param listener The listener to remove