-
Bug
-
Resolution: Fixed
-
Major
-
6.0.1
-
Security Level: Jimmy
-
Windows, Linux
Firefox, IE 9
-
None
The onOpen event no longer fires when a menu popup is closed.
The following code works on version 5.0.11 and also on 6.0.0 but it does not work on 6.0.1:
index.zul:
<zk>
<window border="normal" title="hello" apply="pkg$.TestComposer">
<div>MenuPopup onOpen Event</div>
<div>Click the button below to open the menu - the onOpen event fires. Click away from the menu to close it, the onOpen event should fire again</div>
<button id="btn" label="Click me to popup dynamic menu" />
</window>
</zk>
TestComposer.java:
import org.zkoss.zk.ui.*;
import org.zkoss.zk.ui.event.*;
import org.zkoss.zk.ui.util.*;
import org.zkoss.zk.ui.ext.*;
import org.zkoss.zk.au.*;
import org.zkoss.zk.au.out.*;
import org.zkoss.zul.*;
public class TestComposer extends GenericForwardComposer{
public void doAfterCompose(Component comp) throws Exception
{ super.doAfterCompose(comp); }public void onClick$btn(Event e) throws InterruptedException{
Menupopup contextMenu = new Menupopup();
contextMenu.addEventListener("onOpen", new EventListener() {
public void onEvent(Event evt) {
OpenEvent e = (OpenEvent) evt;
if (!e.isOpen()) {
try
catch (Exception x){}
evt.getTarget().detach();
}
}
});
Menu reportMenu = new Menu("MyMenu");
contextMenu.appendChild(reportMenu);
contextMenu.setPage(e.getTarget().getPage());
contextMenu.open(20,20);
}
}