Search code examples
gwtgwt2

Remove Click Handler-GWT


How to remove the ClickHandler Event in GWT? I added addClickHandler() Event for a button and i want to remove the ClickHandler Event.I tried HandlerRegistration Method But it failed to remove the handler ,Here is a snippet :

notification.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            // TODO Auto-generated method stub
        }

    });  

I want to remove the handler with notification !

Note:
Notification is the button instance that calls the handler!

Solution

  • Each add...Handler method returns the HandlerRegistration interface. This interface contains the removeHandler() method. If you want to remove handlers, simple store the returned interface in a variable and call removeHandler when you want to remove the handler.

    HandlerRegistration handler;
    
    handler = button.addClickHandler(new ClickHandler() {
                @Override
                public void onClick(ClickEvent event) {
                    // ...
    
                }
            });
    handler.removeHandler();